Golang conventions

From wikinotes
Revision as of 03:35, 25 May 2022 by Will (talk | contribs)

Naming

Casing

func DoThing() { ... }  // exported functions are PascalCase
func doThing() { ... }  // regular functions are camelCase

Interfaces

// interfaces should end in 'er' (or similar)
Writer, Reader, Formatter, Notifier, Flusher, Stringer

// implementations of interfaces should drop the 'er'
Write, Read, Format, Notify, Flush, String

Spacing

TODO

Syntax

Semicolons

Go uses semicolons as line-endings, but prefers that the semicolon is implied automatically.