Die Benennungskonvention für Golang-Funktionen entwickelt sich wie folgt: Frühes Stadium (Go 1.0): Keine formale Konvention, Kamel-Benennung verwenden. Unterstrichkonvention (Go 1.5): Exportierte Funktionen beginnen mit einem Großbuchstaben und werden mit einem Unterstrich vorangestellt. Factory-Funktionskonvention (Go 1.13): Funktionen, die neue Objekte erstellen, werden durch das Präfix „Neu“ dargestellt.
Die Benennungskonventionen für Golang-Funktionen haben sich im Laufe der Zeit weiterentwickelt, um die Lesbarkeit, Konsistenz und Wartbarkeit des Codes zu verbessern.
Early Stage (Go 1.0)
Anfangs gab es in Golang keine formale Funktionsbenennungskonvention. Funktionsnamen bestehen normalerweise aus Kamelnamen ohne Unterstrich-Präfix, zum Beispiel:
func MyFunction() { // ... }
Underscore Convention (Go 1.5)
Go 1.5 führte die Unterstrich-Konvention ein, die erfordert, dass exportierte Funktionen mit einem Großbuchstaben beginnen und mit einem Unterstrich vorangestellt werden . Dies hilft dabei, öffentliche API-Funktionen von nicht exportierten Funktionen zu unterscheiden:
func MyPublicFunction() { // ... } func _myPrivateFunction() { // ... }
Factory-Funktionskonvention (Go 1.13)
Go 1.13 fügt eine Factory-Funktionsbenennungskonvention hinzu. Diese Funktionen werden zum Erstellen neuer Objekte verwendet und werden durch das Präfix „Neu“ dargestellt:
func NewMyObject() *MyObject { // ... }
Ein praktisches Beispiel
Hier ist ein Code, der diese Konventionen in Aktion zeigt:
package main func main() { myPrivateFunction() // 非导出函数,以 "_" 前缀开头 myPublicFunction() // 公共 API 函数,以大写字母开头并以下划线前缀 // 创建新对象 myObject := NewMyObject() // 使用对象的方法 myObject.MyObjectMethod() } func _myPrivateFunction() { // ... } func MyPublicFunction() { // ... } type MyObject struct { // ... } func (o *MyObject) MyObjectMethod() { // ... }
Durch die Befolgung dieser Konventionen haben wir kann die Klarheit und Konsistenz unseres Golang-Codes verbessern.
Das obige ist der detaillierte Inhalt vonDie Entwicklung der Benennungskonvention für Golang-Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!