2014-03-27 19 views

Antwort

55

Die Standardbibliothek verwendet Camel-Case, also rate ich Ihnen, dies auch zu tun. Der erste Buchstabe ist Groß- oder Kleinbuchstaben, abhängig davon, ob Sie die Konstante exportieren möchten.

Einige Beispiele:

  • md5.BlockSize
  • os.O_RDONLY eine Ausnahme, weil es direkt von POSIX entlehnt wurde.
  • os.PathSeparator
+2

Es ist auch wichtig zu bestimmen, ob Sie Ihr 'const' Element für andere Pakete verfügbar machen wollen. Wenn Sie 'UpperCamelCase' oder' ALL_CAPS' verwenden, exportieren Sie es außerhalb Ihres Pakets. Aus diesem Grund bleibe ich für private const-Variablen bei "lowCamelCase", und ich erinnere mich, dass ich diese Empfehlung von jemandem gelesen habe, der relativ nah am Go-Projekt ist (oder vielleicht sogar in der offiziellen Dokumentation - ich vergesse wo). – weberc2

45

Go Code Review Comments

Diese Seite sammelt gemeinsame Kommentare während Bewertungen von Go-Code gemacht, so , dass eine einzige ausführliche Erklärung kann von Kürzeln bezeichnet werden. Dies ist eine Liste der häufigsten Fehler, nicht ein Style-Guide.

Sie können dies als eine Ergänzung zu http://golang.org/doc/effective_go.html anzeigen.

Mixed Caps

Siehe http://golang.org/doc/effective_go.html#mixed-caps. Dies gilt , auch wenn es Konventionen in anderen Sprachen bricht. Zum Beispiel ist eine nicht exportierte Konstante maxLength nicht MaxLength oder MAX_LENGTH.


Effective Go

MixedCaps

die Konvention in Go Schließlich ist MixedCaps oder mixedCaps eher als Unterstrichen Mehrwort Namen zu schreiben, zu verwenden.


The Go Programming Language Specification

Exported identifiers

Ein Bezeichner kann den Zugriff auf von einem anderen Paket ermöglichen werden exportiert. Eine Kennung wird exportiert, wenn beide:

  • das erste Zeichen des Namens der Kennung ist ein Unicode Großbuchstaben (Unicode-Klasse „Lu“); und

  • Der Bezeichner wird im Paketblock deklariert oder ist ein Feldname oder Methodenname.

Alle anderen Bezeichner werden nicht exportiert.


Verwenden Mischkappen.

+2

+1 für direkte Dokumentation. –

2

Spezifische Beispiele. Beachten Sie, dass das Deklarieren des Typs in der Konstante (falls relevant) für den Compiler hilfreich sein kann.

// Only visible to the local file 
const localFileConstant string = "Constant Value with limited scope" 

// Exportable constant 
const GlobalConstant string = "Everyone can use this" 
Verwandte Themen