Rumah > pembangunan bahagian belakang > Golang > Evolusi konvensyen penamaan fungsi golang

Evolusi konvensyen penamaan fungsi golang

PHPz
Lepaskan: 2024-05-01 15:24:01
asal
670 orang telah melayarinya

Evolusi konvensyen penamaan fungsi Golang adalah seperti berikut: Peringkat awal (Go 1.0): Tiada konvensyen formal, gunakan penamaan unta. Konvensyen garis bawah (Go 1.5): Fungsi yang dieksport bermula dengan huruf besar dan diawali dengan garis bawah. Konvensyen fungsi kilang (Go 1.13): Fungsi yang mencipta objek baharu diwakili oleh awalan "Baharu".

Evolusi konvensyen penamaan fungsi golang

Evolusi konvensyen penamaan fungsi Golang

Konvensyen penamaan fungsi Golang telah berkembang dari semasa ke semasa untuk meningkatkan kebolehbacaan, ketekalan dan kebolehselenggaraan kod.

Peringkat Awal (Go 1.0)

Pada mulanya, Golang tidak mempunyai konvensyen penamaan fungsi formal. Nama fungsi biasanya terdiri daripada penamaan unta tanpa awalan garis bawah, contohnya:

func MyFunction() {
    // ...
}
Salin selepas log masuk

Konvensyen Underscore (Go 1.5)

Go 1.5 memperkenalkan konvensyen garis bawah, yang memerlukan fungsi yang dieksport untuk bermula dengan huruf besar dan ditandakan dengan awalan . Ini membantu membezakan fungsi API awam daripada fungsi yang tidak dieksport:

func MyPublicFunction() {
    // ...
}

func _myPrivateFunction() {
    // ...
}
Salin selepas log masuk

Konvensyen fungsi kilang (Go 1.13)

Go 1.13 menambah konvensyen penamaan fungsi kilang. Fungsi ini digunakan untuk mencipta objek baharu dan diwakili oleh awalan "Baharu":

func NewMyObject() *MyObject {
    // ...
}
Salin selepas log masuk

Contoh praktikal

Berikut ialah sekeping kod yang menunjukkan konvensyen ini dalam tindakan:

package main

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

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

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

func _myPrivateFunction() {
    // ...
}

func MyPublicFunction() {
    // ...
}

type MyObject struct {
    // ...
}

func (o *MyObject) MyObjectMethod() {
    // ...
}
Salin selepas log masuk

Dengan mengikuti konvensyen ini, kami boleh meningkatkan kejelasan dan ketekalan kod Golang kami.

Atas ialah kandungan terperinci Evolusi konvensyen penamaan fungsi golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan