Maison > développement back-end > Golang > L'évolution de la convention de dénomination des fonctions Golang

L'évolution de la convention de dénomination des fonctions Golang

PHPz
Libérer: 2024-05-01 15:24:01
original
670 Les gens l'ont consulté

La convention de dénomination des fonctions Golang évolue comme suit : Début (Go 1.0) : Aucune convention formelle, utilisez le nommage des chameaux. Convention de soulignement (Go 1.5) : les fonctions exportées commencent par une lettre majuscule et sont préfixées par un trait de soulignement. Convention des fonctions d'usine (Go 1.13) : les fonctions qui créent de nouveaux objets sont représentées par le préfixe "Nouveau".

Lévolution de la convention de dénomination des fonctions Golang

Évolution des conventions de dénomination des fonctions Golang

Les conventions de dénomination des fonctions Golang ont évolué au fil du temps pour améliorer la lisibilité, la cohérence et la maintenabilité du code.

Early Stage (Go 1.0)

Au départ, Golang n'avait pas de convention formelle de dénomination des fonctions. Les noms de fonctions consistent généralement en un nom de chameau sans préfixe de soulignement, par exemple :

func MyFunction() {
    // ...
}
Copier après la connexion

Convention de soulignement (Go 1.5)

Go 1.5 a introduit la convention de soulignement, exigeant que les fonctions exportées commencent par une lettre majuscule et soient préfixées par un trait de soulignement. . Cela permet de distinguer les fonctions API publiques des fonctions non exportées :

func MyPublicFunction() {
    // ...
}

func _myPrivateFunction() {
    // ...
}
Copier après la connexion

Convention des fonctions d'usine (Go 1.13)

Go 1.13 ajoute une convention de dénomination des fonctions d'usine. Ces fonctions sont utilisées pour créer de nouveaux objets et sont représentées par le préfixe "Nouveau" :

func NewMyObject() *MyObject {
    // ...
}
Copier après la connexion

Un exemple pratique

Voici un morceau de code qui montre ces conventions en action :

package main

func main() {
    myPrivateFunction() // 非导出函数,以 "_" 前缀开头
    myPublicFunction() // 公共 API 函数,以大写字母开头并以下划线前缀

    // 创建新对象
    myObject := NewMyObject()

    // 使用对象的方法
    myObject.MyObjectMethod()
}

func _myPrivateFunction() {
    // ...
}

func MyPublicFunction() {
    // ...
}

type MyObject struct {
    // ...
}

func (o *MyObject) MyObjectMethod() {
    // ...
}
Copier après la connexion

En suivant ces conventions, nous peut améliorer la clarté et la cohérence de notre code Golang.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal