溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Go基礎(chǔ)命名規(guī)范有哪些

發(fā)布時(shí)間:2021-12-20 14:41:18 來源:億速云 閱讀:102 作者:iii 欄目:大數(shù)據(jù)

這篇文章主要講解了“Go基礎(chǔ)命名規(guī)范有哪些”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Go基礎(chǔ)命名規(guī)范有哪些”吧!

基本規(guī)則

Go約定使用MixedCaps或者mixedCaps的形式,而不是下劃線來書寫多個(gè)單詞的名字。

工程名稱

  1. 項(xiàng)目名(倉庫名)的命名可以使用字母、數(shù)字。

  2. 多個(gè)單詞建議采用中劃線分隔,目前github中大多數(shù)項(xiàng)目都是使用用中劃線,不建議采用駝峰式分隔,不要使用下劃線(kubernetes中的組件名稱不允許使用下劃線)

  3. 命名可以是對(duì)項(xiàng)目功能的描述;也可以是一個(gè)代號(hào)(如神話人物的名字,或者希臘語),適合采用代號(hào)的項(xiàng)目有兩種,一種是公司的基礎(chǔ)組件或者開源項(xiàng)目,一般這種項(xiàng)目都有詳細(xì)的文檔,

  4. 項(xiàng)目名(倉庫名)要盡量避免重復(fù),如果可能重復(fù)要添加必要的前綴或者后綴做區(qū)分。

  5. 命名盡量在三個(gè)單詞以內(nèi)。

正確:

user、user-api、user-service,product、product-search、redis-go,druid、zeus、kubernetes.

錯(cuò)誤:

user_api、Product

包名稱

保持package的名字和目錄保持一致,同一個(gè)文件夾所有源文件中的包名必須一致。

包名應(yīng)該為小寫單詞,不要使用下劃線或者混合大小寫。

package domainpackage main

文件命名

盡量采取有意義的文件名,簡(jiǎn)短,有意義,應(yīng)該為小寫單詞,使用下劃線分隔各個(gè)單詞。

approve_service.go

結(jié)構(gòu)體命名

  • 采用駝峰命名法,首字母根據(jù)訪問控制大寫或者小寫

  • struct 申明和初始化格式采用多行,例如下面:

type MainConfig struct {    Port string `json:"port"`    Address string `json:"address"`}config := MainConfig{"1234", "123.221.134"}

接口命名

  • 命名規(guī)則基本和上面的結(jié)構(gòu)體類型

  • 單個(gè)函數(shù)的結(jié)構(gòu)名以 “er” 作為后綴,例如 Reader , Writer 。

type Reader interface {        Read(p []byte) (n int, err error)}

變量命名

和結(jié)構(gòu)體類似,變量名稱一般遵循駝峰法,首字母根據(jù)訪問控制原則大寫或者小寫,但遇到特有名詞時(shí),需要遵循以下規(guī)則:

  1. 如果變量為私有,且特有名詞為首個(gè)單詞,則使用小寫,如 appService

  2. 若變量類型為 bool 類型,則名稱應(yīng)以 Has, Is, Can 或 Allow 開頭

  3. 作用域越小,命名應(yīng)該越簡(jiǎn)短。如在for循環(huán)內(nèi)部用i表示index。

常量命名

常量均需使用全部大寫字母組成,并使用下劃線分詞

如果是枚舉類型的常量,需要先創(chuàng)建相應(yīng)類型:

錯(cuò)誤處理

  • 錯(cuò)誤處理的原則就是不能丟棄任何有返回err的調(diào)用,不要使用 _ 丟棄,必須全部處理。接收到錯(cuò)誤,要么返回err,或者使用log記錄下來

  • 盡早return:一旦有錯(cuò)誤發(fā)生,馬上返回

  • 盡量不要使用panic,除非你知道你在做什么

  • 錯(cuò)誤描述如果是英文必須為小寫,不需要標(biāo)點(diǎn)結(jié)尾

  • 采用獨(dú)立的錯(cuò)誤流進(jìn)行處理

單元測(cè)試

單元測(cè)試文件名命名規(guī)范為 example_test.go 測(cè)試用例的函數(shù)名稱必須以 Test 開頭,例如:TestExample 每個(gè)重要的函數(shù)都要首先編寫測(cè)試用例,測(cè)試用例和正規(guī)代碼一起提交方便進(jìn)行回歸測(cè)試 。

感謝各位的閱讀,以上就是“Go基礎(chǔ)命名規(guī)范有哪些”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)Go基礎(chǔ)命名規(guī)范有哪些這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

go
AI