Go Style: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 19: Line 19:


When a variable, struct or interface is imported from another package, its name includes the package name or alias: <code>mypackage.MyVar</code>.
When a variable, struct or interface is imported from another package, its name includes the package name or alias: <code>mypackage.MyVar</code>.
Use name abbreviations only if they are widely used (example: <code>fmt</code>).
Avoid name collisions, when possible. If you introduce a set of string functions, avoid calling the package <code>strings</code> because a package with the same name exists in the standard library already.


Other naming conventions:
Other naming conventions:

Revision as of 19:09, 6 September 2023

External

Internal

Overview

The Go standard library is a good source of code examples, comments and style.

Naming

https://google.github.io/styleguide/go/guide#mixedcaps

Naming is one of the most important aspects of Go development. Writing idiomatic Go requires understanding of its core naming principles.

Identifiers should use camel case: SomeColor or someColor, depending on whether they are visible outside the package or not. Do not use snake case some_color.

Acronyms should have a consistent case. URL or url is correct, Url is not.

When a variable, struct or interface is imported from another package, its name includes the package name or alias: mypackage.MyVar.

Use name abbreviations only if they are widely used (example: fmt).

Avoid name collisions, when possible. If you introduce a set of string functions, avoid calling the package strings because a package with the same name exists in the standard library already.

Other naming conventions: