Use meaningful, descriptive names that clearly convey purpose and maintain consistency across similar concepts throughout the codebase. Avoid magic strings, cryptic abbreviations, and inconsistent naming patterns.
Use meaningful, descriptive names that clearly convey purpose and maintain consistency across similar concepts throughout the codebase. Avoid magic strings, cryptic abbreviations, and inconsistent naming patterns.
Key principles:
"clickhouse_max_threads"
, create const ClickhouseMaxThreadsKey = "clickhouse_max_threads"
serverAddrLegacyIdx
and serverAddrCurrentIdx
instead of mixing serverAddrIdx
and netPeerIdx
)k, m
with meaningful ones like metricName, isNormalized
GetTransitionedMetric
(singular) instead of GetTransitionedMetrics
when operating on single itemsNewNotFoundf
instead of NotFoundNew
for natural readability, and Start/End
instead of StartDate/EndDate
for timestamp fieldsalert_id
consistently if other IDs follow underscore conventionExample of good naming consistency:
const (
ServerNameLegacyKey = "net.peer.name"
ServerNameCurrentKey = "server.address"
URLPathLegacyKey = "http.url"
URLPathCurrentKey = "url.full"
)
// Consistent variable naming
serverAddrLegacyIdx := -1
serverAddrCurrentIdx := -1
This approach improves code readability, reduces confusion during reviews, and makes the codebase more maintainable by establishing clear naming patterns that developers can follow consistently.
Enter the URL of a public GitHub repository