国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Go 語言代碼風格規范-概述篇

開發 前端
各 Go 程序員之間,以及各團隊的代碼庫之間總會存在差異。然而,為了符合 Google 和 Alphabet 的最大利益,我們的代碼庫盡可能得保持一致,因此,請自由地對你認為合適的編碼風格進行改進,發現不符合風格規范的行為時,你也不需要過于吹毛求疵。

?每門開發語言都會有其特有的風格規范(亦或指南),開發者遵循規范能帶來顯著收益,有效促進團隊協作、減少 bug 錯誤、降低維護成本等。

Google 開源的 Google Style Guides (?https://google.github.io/styleguide/?)為多種編程語言提供了風格規范,包括 C++、Java、Python、JavaScript 等。在 2022 年 11 月,Go 語言風格規范(?https://google.github.io/styleguide/go/index)也終于得到開源。

如果你所在的團體還未形成一套系統的 Go 風格規范,不妨參考這份指南。

本公眾號將持續更新該規范的中文譯本。本文以下內容將是該系列的第一部分,即【概述篇】。

關于

Go 語言風格規范和附錄文檔整理了當前編寫易讀且正宗的 Go 的最佳方法。遵循編程指南不是絕對的,因為這些文檔不可能面面俱到。我們的目的是盡可能減少編寫可讀性 Go 代碼試錯成本,新手們可以避免常見錯誤。這份規范還為那些在 Google 內部 Go 代碼審查的人提供統一的風格指導。

文檔

鏈接

主要受眾

規范的

權威的

指南

?https://google.github.io/styleguide/go/guide?

所有人



決策

?https://google.github.io/styleguide/go/decisions?

代碼可讀性審查者



最佳實踐

?https://google.github.io/styleguide/go/best-practices?

任何感興趣的人



文檔

1.【指南篇】概述了 Google Go 代碼風格的基礎。該文檔是權威的,并用作【決策篇】和【最佳實踐篇】中建議的依據。

2.【決策篇】是一個更詳細的文檔,它總結了關于特定風格點的決策,并適當地討論了這些決策背后的原因。

這些決策可能會因為新數據類型、新語言特性、新標準庫或新的模型而改變,但我們并不需要 Google 的 Go 程序員與該文檔實時一致。

3.【最佳實踐篇】記錄了一些隨著時間的推移而演變的模式,這些模式解決了常見問題,易于閱讀,高魯棒性也滿足了代碼可維護性要求。

這些最佳實踐并不權威,但我們鼓勵 Google 的 Go 程序員盡可能使用它們,以保持代碼庫的統一。

這些文檔的目的:

  • 就權衡可替代編碼風格的一套原則達成一致。
  • 編纂 Go 編碼風格已解決的問題。
  • 記錄并提供正宗 Go 代碼的規范示例。
  • 記錄各種編碼風格決策的利弊。
  • 幫助減少 Go 可讀性代碼審查中的意外。
  • 幫助代碼可讀性代碼審查者使用一致的術語和指南。

非這些文檔的目的:

  • 成為代碼可讀性審查者在代碼評論下的詳盡清單。
  • 列出所有規則,并希望每個人都記住并始終遵守。
  • 失去對語言特性和風格使用的良好判斷。
  • 為消除代碼風格差異而成為大規模修改的借口。

各 Go 程序員之間,以及各團隊的代碼庫之間總會存在差異。然而,為了符合 Google 和 Alphabet 的最大利益,我們的代碼庫盡可能得保持一致,因此,請自由地對你認為合適的編碼風格進行改進,發現不符合風格規范的行為時,你也不需要過于吹毛求疵。特別是,這些文檔可能會隨著時間而改變,它不應該是導致現有代碼庫需要額外改動的理由;使用最新的最佳實踐去編寫新代碼就足夠了,隨著時間的推移這部分內容就已經被解決了。

重要的是要認識到代碼風格問題本質上是個人的,并且總是存在固有的權衡。這些文檔中的大部分指導都是主觀的,但就像gofmt一樣,它們提供的統一性具有重要價值。因此,這些編碼風格建議不會在未經適當討論的情況下修改。我們鼓勵 Google 的 Go 程序員遵循這些編程風格規范,即使他們可能對某些內容并不同意。

定義

整個代碼風格系列文檔中使用的一些詞語,定義如下

Canonical(權威的):建立規范且持久的規則。

在這些文檔中,“權威的”用于描述被認為是所有代碼(舊的和新的)都應該遵循的標準,并且語句不會隨著時間的推移而發生重大變化。權威的文檔中的原則應該被代碼作者和審查人理解,權威的文檔中包含的所有內容都必須達到高標準。因此,與非權威的文檔相比,權威的文檔通常更短,并且規定的代碼風格元素也更少。

https://google.github.io/styleguide/go#canonical

Normative(規范的):旨在建立一致性。

在這些文檔中,“規范的”用于描述 Go 代碼審查者都同意的代碼風格元素,以確保他們在提供建議、術語和理由時能保持一致。這些風格元素可能會隨著時間的推移而發生變化,這些文檔將反映這些變化,以便代碼審查者可以保持一致與最新。Go 代碼開發者不用熟悉這些規范性文檔,但這些文檔應該被代碼審查者用作可讀性審查的參考。

https://google.github.io/styleguide/go#normative

Idiomatic(正宗的):常見且熟悉的。

在這些文檔中,“正宗的”用于指代 Go 代碼中普遍存在的東西,并已成為一種易于識別的熟悉模式。一般而言,如果兩種模式在上下文中起到相同的目的,那么正宗的模式應該優先于非正宗的模式,因為這是代碼讀者最熟悉的模式。

https://google.github.io/styleguide/go#idiomatic

附加參考

本指南假定讀者熟悉 Effective Go(?https://go.dev/doc/effective_go),因為它為整個 Go 社區的 Go 代碼提供了一個共同的基線。

下面是一些額外的資源,供那些希望自學 Go 代碼風格的人,和為代碼審查者提供更多能使用的評論意見依據鏈接。我們并不期望 Go 代碼可讀性的參與者熟悉這些資源,但他們可能會作為代碼可讀性審查的背景出現。

外部參考

  • [Go 語言規范] https://go.dev/ref/spec
  • [Go 高頻問題問答] https://go.dev/doc/faq
  • [Go內存模型] https://go.dev/ref/mem
  • [Go數據結構] https://research.swtch.com/godata
  • [Go接口] https://research.swtch.com/interfaces
  • [Go諺語] https://go-proverbs.github.io/
  • Go 小技巧 - 敬請關注.

相關的“廁所測試“文檔

  • [TotT: Identifier Naming] https://testing.googleblog.com/2017/10/code-health-identifiernamingpostforworl.html
  • [TotT: Testing State vs. Testing Interactions] https://testing.googleblog.com/2013/03/testing-on-toilet-testing-state-vs.html
  • [TotT: Effective Testing] https://testing.googleblog.com/2014/05/testing-on-toilet-effective-testing.html
  • [TotT: Risk-driven Testing] https://testing.googleblog.com/2014/05/testing-on-toilet-risk-driven-testing.html
  • [TotT: Change-detector Tests Considered Harmful] https://testing.googleblog.com/2015/01/testing-on-toilet-change-detector-tests.html

額外的外部著作

  • [Go教條] https://research.swtch.com/dogma
  • [少即是多] https://commandcenter.blogspot.com/2012/06/less-is-exponentially-more.html
  • [埃斯梅拉達的想象力] https://commandcenter.blogspot.com/2011/12/esmereldas-imagination.html
  • [用于解析的正則表達式] https://commandcenter.blogspot.com/2011/08/regular-expressions-in-lexing-and.html
  • [Gofmt 的風格沒有人喜歡,但 Gofmt 卻是每個人的最愛] https://www.youtube.com/watch?v=PAAkCSZUG1c&t=8m43s (YouTube)?
責任編輯:武曉燕 來源: Golang技術分享
相關推薦

2022-12-05 09:32:29

Go 語言風格規范

2021-11-08 07:48:48

Go語言對象

2022-05-09 10:36:05

PythonPyScript開發者

2020-03-18 15:54:41

開發效率代碼

2020-12-02 08:45:36

Go語言

2020-11-30 06:17:03

Go語言

2020-11-26 06:40:24

Go語言基礎

2015-07-16 13:57:06

移動web開發規范

2020-11-23 08:54:14

Go語言結構體

2022-01-17 07:50:37

Go代碼規范

2019-10-15 14:16:45

編程語言Go 開發

2012-03-22 17:16:24

Java

2021-06-24 06:35:00

Go語言進程

2013-06-06 10:10:59

項目項目代碼代碼風格

2022-06-29 09:19:09

靜態代碼C語言c代碼

2023-11-22 08:00:56

Go命名規范

2017-07-10 14:58:23

JavaScript代碼風格寫作準則

2018-03-12 22:13:46

GO語言編程軟件

2021-04-30 09:04:11

Go 語言結構體type

2023-12-05 07:14:27

AIGo
點贊
收藏

51CTO技術棧公眾號

欧美私人网站| 亚洲综合清纯丝袜自拍| 在线观看亚洲视频啊啊啊啊| 久久久久网站| 性一交一乱一伧国产女士spa| 97se亚洲国产综合自在线不卡| 国产一级不卡毛片| 亚洲精品成a人| 午夜不卡视频| 亚洲天堂网在线观看| 国产成人av毛片| 亚洲一区制服诱惑| 久国产精品韩国三级视频| 久久久免费视频网站| 亚洲第一福利视频在线| 黄色av网站在线播放| 中文字幕欧美专区| 青青草91久久久久久久久| 欧美人xxxxx| 久久久久九九视频| 亚洲私人影吧| 亚洲偷欧美偷国内偷| 免费av一区二区三区四区| 久久九九视频| 久久综合久久鬼色中文字| 日韩毛片在线一区二区毛片| 亚洲福利视频在线| 国内精品偷拍| 欧美日韩精品一区| 国产三区在线成人av| 日韩在线免费播放| 亚洲欧美日韩天堂一区二区| 在线播放一区二区精品视频| 99精品99久久久久久宅男| 国产精品中文有码| 在线看片你懂得| 伊人一区二区三区久久精品| 成人写真视频| 国产自产在线视频| 日本高清不卡视频| 国产精品麻豆| 精品久久久久久一区| 久久色视频免费观看| 香蕉视频网站在线观看| 欧美国产第二页| 免费在线看一区| 在线激情视频| 久久亚洲精品一区二区| 亚洲五月婷婷| 99视频资源网| 亚洲精品久久久久久久久久久久 | 午夜精品成人在线| 日本成人伦理电影| 精品高清视频| 一区二区三区在线免费视频| 91超碰在线播放| 91入口在线观看| 国产精品国产三级国产普通话蜜臀| 日本在线观看大片免费视频| 国产精品亚洲视频在线观看| 成人av网在线| www.色在线| 极品尤物一区二区三区| 玉足女爽爽91| 综合伊人久久| 日韩在线综合网| 精品国产青草久久久久福利| 中文字幕人成人乱码| 丁香花高清视频完整版在线观看| 色av吧综合网| 国产精品一级片在线观看| 在线电影福利片| 国产a一区二区| 精品成人乱色一区二区| 青青草原在线亚洲| 日韩欧美在线免费观看视频| 在线观看91久久久久久| 蜜桃视频在线一区| 伊人在我在线看导航| 国产伦精品一区二区三区照片91| 午夜精彩视频在线观看不卡| 亚洲综合图色| 麻豆av观看| 欧洲永久精品大片ww免费漫画| 99这里都是精品| 精品久久99| 黄色一级片播放| 久久视频国产精品免费视频在线| 国产尤物一区二区| 乱馆动漫1~6集在线观看| 日韩欧美在线一区二区| 日韩欧美国产一区在线观看| 中文日韩欧美| 国产区在线观看| 国产一区免费| 日韩西西人体444www| 免费看黄色91| 成人亚洲欧美| 日本精品一区在线观看| 久热爱精品视频线路一| 久久精品视频一区二区| 日韩精品中文字幕一区二区| 欧美视频在线播放一区| 日韩一区在线视频| 国产日产欧产精品推荐色| 国产日韩三级| 国产黄色影视| 91丝袜美腿美女视频网站| 欧美色xxxx| 中文在线一区| 忘忧草在线影院两性视频| www.夜夜爱| 久久男人资源视频| 亚洲福利一区二区三区| 综合天堂av久久久久久久| 成人77777| 天堂√在线观看一区二区| 亚洲欧美色婷婷| 国产精品人成在线观看免费| 国产一区不卡| 国产一二在线观看| 亚洲日本精品一区| 日韩在线小视频| 亚洲免费大片在线观看| 永久91嫩草亚洲精品人人| 美女精品导航| 粗暴91大变态调教| 91在线精品播放| 日韩黄色在线免费观看| 久久久精品天堂| 66视频精品| 澳门成人av网| 91网页在线看| 神马影院一区二区三区| 色综合伊人色综合网| 亚洲午夜一二三区视频| 日韩av中文字幕一区二区| 国产精品久久乐| 性色视频在线| 一二三四中文字幕| 国产精品高精视频免费| 精品久久久久一区二区国产| 久久久久久久久岛国免费| 亚洲精品成人影院| 免费污视频在线一区| 在线视频三级| 日韩小视频网站| 亚洲free性xxxx护士白浆| 亚洲品质视频自拍网| 亚洲国产乱码最新视频| 激情成人午夜视频| 成人动漫免费在线观看| 亚洲免费福利| 在线播放av网站| 国产精品333| 久久精品日韩| 国产91精品不卡视频| 亚洲国产精品va在线看黑人| 亚洲欧美偷拍三级| 狠狠色2019综合网| 我不卡影院28| 欧美电影院免费观看| av在线下载| 国产无遮挡在线视频免费观看| 性生活免费观看视频| 国产精品一区二区性色av| 亚洲欧洲在线观看| 欧美视频一区二区三区在线观看 | 久久精品国内一区二区三区水蜜桃| а√天堂中文资源在线bt| 91在线网站| 凹凸国产熟女精品视频| 久久久精品有限公司| 青青在线视频一区二区三区| 亚洲精品一区久久久久久| 欧美日韩国产专区| 国产亚洲综合在线| 国内不卡的二区三区中文字幕| 久久网站免费观看| 99精品国产一区二区三区2021| 欧美性爽视频| 日韩精品123| 亚洲精品自拍网| 路边理发店露脸熟妇泻火| 成人羞羞视频免费| 欧美综合一区第一页| 少妇av一区二区三区| 日韩三级免费观看| 欧美日韩国产在线看| 国产精品素人一区二区| 国产精品一区二区视频| 亚洲黄色三级| 成人在线电影在线观看视频| 亚洲精品a区| yw.尤物在线精品视频| 成人三级小说| 中文字幕在线三区| 麻豆影视在线观看_| 偷拍自拍在线| 在线观看高清av|