站長資訊網
        最全最豐富的資訊網站

        總結一些Golang的命名規范

        本文由golang教程欄目給大家總結介紹Golang的一些命名規范,希望對需要的朋友有所幫助!

        很少見人總結一些命名規范,也可能是筆者孤陋寡聞, 作為一個兩年的golang 開發者, 我根據很多知名的項目,如 moby, kubernetess 等總結了一些常見的命名規范。

        命名規范可以使得代碼更容易與閱讀, 更少的出現錯誤。

        如有不同意見歡迎吐槽、討論。

        文件命名規范

        由于文件跟包無任何關系, 而又避免windows大小寫的問題,所以推薦的明明規范如下:

        文件名應一律使用小寫, 不同單詞之間用下劃線分割, 命名應盡可能地見名知意

        常量命名規范

        常量明明用 camelcase來命名示例如下

        const todayNews = "Hello"
        //  如果超過了一個常量應該用括號的方法來組織 const (    systemName = "What"    sysVal = "dasdsada" )

        變量命名規范

        與常量命名方式一樣,變量也應該使用駝峰的命名方式, 但注意盡量不與包名一致或者以包名開頭

        var  x string x := new(string)

        函數命名規范

        由于Golang的特殊性(用大小寫來控制函數的可見性),除特殊的性能測試與單元測試函數之外, 都應該遵循如下原則

        • 使用駝峰命名

        • 如果包外不需要訪問請用小寫開頭的函數

        • 如果需要暴露出去給包外訪問需要使用大寫開頭的函數名稱

        一個典型的函數命名方法如下:

        // 注釋一律使用雙斜線, 對象暴露的方法 func (*fileDao) AddFile(file *model.File) bool {    result := db.NewRecord(*file)    if result {       db.Create(file)    }    return result }   // 不需要給包外訪問的函數如下 func removeCommaAndQuote(content string) string {    re, _ := regexp.Compile("[\`\,]+")    return strings.TrimSpace(re.ReplaceAllString(content, "")) }

        接口命名規范

        接口命名也是要遵循駝峰方式命名, 可以用 type alias 來定義大寫開頭的type 給包外訪問

        type helloWorld interface {     func Hello(); } type SayHello helloWorld

        Struct命名規范

        與接口命名規范類似

        receiver 命名規范

        golang 中存在receiver 的概念

        receiver 名稱應該盡量保持一致, 避免this, super,等其他語言的一些語義關鍵字如下

        type A struct{} func (a *A) methodA() { } func (a *A) methodB() {     a.methodA() }

        注釋規范

        注釋應一律使用雙斜線

        其他

        格式化, 用tab不是空格, 可以與go fmt 兼容

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 久久久精品人妻一区二区三区蜜桃 | 三上悠亚久久精品| 四虎国产精品永久地址99新强 | 成人精品在线视频| 亚洲精品无码久久久久sm| 国产精品视频色视频| 欧美大片日韩精品| 97久久综合精品久久久综合| 精品久久久久久久无码| 亚洲国产另类久久久精品黑人 | 亚洲国产另类久久久精品小说| 免费短视频软件精品一区二区| 99久久99久久精品国产| 久久精品国产福利国产秒| 国产亚洲欧美精品久久久| 亚洲av永久无码精品秋霞电影影院| 日韩福利视频精品专区| 久久精品国产99久久香蕉| 国产午夜精品久久久久九九| 国产精品五月天强力打造| 国产精品玖玖美女张开腿让男人桶爽免费看 | 欧美精品色婷婷五月综合| 精品久久久久久无码中文字幕| 国产精品日日摸夜夜添夜夜添1国产精品va欧美精 | 中文字幕精品无码一区二区| 亚洲国产精品综合久久网络 | 亚洲国产精品无码中文字| 亚洲欧美日韩久久精品第一区| 夜夜爽一区二区三区精品| 尤物TV国产精品看片在线| 亚洲一区无码精品色| 亚洲欧美日韩久久精品第一区| 无码国内精品久久人妻| 三上悠亚久久精品| 国产欧美精品一区二区三区| 国产精品视频二区不卡| 国产AV国片精品有毛| 国产精品视频分类一区| 在线观看91精品国产入口| 国产精品青草视频免费播放 | 在线观看亚洲精品福利片|