Google鼓勵13條代碼審查標準

      網(wǎng)友投稿 829 2022-05-29

      如何在代碼審查方面表現(xiàn)出色

      Google鼓勵的13條代碼審查標準

      在本文中,我們將簡要介紹13種代碼審查標準,這些標準可以極大地幫助改善軟件的運行狀況并保持開發(fā)人員滿意。

      代碼沒有任何錯誤或問題。

      符合所有質(zhì)量要求和標準。

      代碼執(zhí)行了預期的測試。

      合并后,它將使代碼庫的運行狀況保持更好。

      這就是為什么代碼審查是軟件開發(fā)的關鍵部分的原因。代碼審閱者充當代碼庫管理員,負責確定代碼是否處于要成為代碼庫的一部分并進入生產(chǎn)的狀態(tài)。

      Google以其卓越的技術而著稱,它們具有有效的代碼審查標準,這些標準似乎突出了審查代碼時要記住的一些要點。在Google,代碼審查的主要目的是確保Google代碼庫的整體代碼運行狀況隨著時間的推移而不斷改善。

      這是您在查看更改列表(Pull Request)時要記住的事項列表。

      審查標準

      1.該代碼改善了系統(tǒng)的整體運行狀況

      每個更改列表(Pull Request)都會改善系統(tǒng)的整體運行狀況。想法是,由于進行了如此小的改進,每次合并后,軟件或代碼庫的運行狀況都會得到改善。

      2.快速的代碼審查,響應和反饋

      首先,不要延遲推送(合并)更好的代碼。不要指望代碼是完美的。如果它的狀況可以改善系統(tǒng)的整體運行狀況,則請推送。

      “這里的關鍵是沒有'完美'的代碼,只有更好的代碼。”

      如果您不在一項重點任務的中間,那么請在代碼完成后立即進行檢查;但是,一個工作日是響應拉取請求(更改列表)所需的最長時間。預計變更列表(拉取請求)將在一天之內(nèi)獲得多輪的部分/完整代碼審查。

      3.在代碼審查期間進行教育和啟發(fā)

      通過盡可能共享知識和經(jīng)驗,在代碼審查期間提供指導。

      4.審查代碼時遵循標準

      始終牢記,編碼標準此類文檔是代碼審查期間的絕對權威。例如,要在制表符和空格之間保持一致性,可以引用編碼約定。

      5.解決代碼審查沖突

      通過遵循樣式指南和編碼標準文檔中商定的最佳實踐,并尋求其他在產(chǎn)品領域具有更多知識和經(jīng)驗的人的建議,來解決沖突。根據(jù)嚴重性,處理沖突有所不同。

      6.演示UI更改是代碼審查的一部分

      如果更改列表(Pull Request)更改了用戶界面,則除了代碼查看之外,還必須進行演示以確保外觀上的所有外觀均符合預期并與模擬匹配。

      對于前端變更列表(Pull Request),始終建議進行演示/演練,或確保變更列表還包括必要的UI自動化測試,以驗證添加/更新的功能。

      7.確保代碼審查伴隨所有測試

      除非緊急情況,否則拉取請求(更改列表)應伴隨所有必要的測試,例如單元,集成,端到端等。

      緊急情況可能是需要盡快修復的錯誤或安全漏洞,以后可以添加測試。在這種情況下,請確保創(chuàng)建了適當?shù)膯栴},并確保有人在完成熱修復或部署后立即擁有所有權才能完成。

      沒有足夠的理由跳過測試。如果由于時間限制,某些目標有無法實現(xiàn)的風險,那么解決方案不是跳過測試,而是要對可交付成果進行范圍界定。

      8.專注時,不要打擾自己進行代碼審查

      如果您正處于重點工作中,請不要打擾自己,因為這可能需要很長時間才能恢復正常。換句話說,打斷專注的開發(fā)人員所付出的代價比讓開發(fā)人員等待代碼審查要高得多。在計劃的休息時間(例如午餐,咖啡等)之后進行代碼檢查。

      9.復習一切,不要做任何假設

      查看分配給您檢查的每一行代碼。不要對人工編寫的類和方法做任何假設,并且應該確保您了解代碼在做什么。

      確保了解您正在檢查的代碼。如果沒有,請進行澄清或要求代碼演練/解釋。如果您有部分代碼不具備審閱的資格,請確保還有其他合格的開發(fā)人員可以審閱代碼的那些部分。

      10.回顧代碼時要顧全大局

      從更廣泛的背景來看變化通常是有幫助的。例如,更改了文件,并添加了四行代碼。不要只查看四行代碼;相反,請考慮查看整個文件并檢查新添加的內(nèi)容。它們會降低現(xiàn)有代碼的質(zhì)量,還是會使現(xiàn)有功能成為重構的候選對象?

      如果不在函數(shù)/方法或類的上下文中檢查此類簡單的添加項,則隨著時間的流逝,您將繼承一個類,該類是不可維護的,超級復雜的,難以測試的,無法完成的所有工作,并且難以擴展或重構。

      請記住,隨著時間的推移,很少的改進加起來就可以產(chǎn)生具有最少數(shù)量缺陷的優(yōu)質(zhì)產(chǎn)品,同樣,隨著時間的流逝,輕微的代碼降級或技術負擔也會加重并導致產(chǎn)品難以維護和擴展。

      11.認可并鼓勵代碼評審期間的良好工作

      12.在代碼審查中要謹慎,尊重,友善和清晰

      13.解釋您的代碼審查注釋,并牢記范圍

      每當代碼審閱意見提出替代方法或進行標記時,至關重要的是要解釋原因并根據(jù)您的知識和經(jīng)驗提供示例,以幫助開發(fā)人員了解您的建議將如何幫助提高代碼質(zhì)量。

      附件: 版內(nèi)搜索結果.rar 376.76KB 下載次數(shù):0次

      其他

      版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。

      上一篇:【響應式編程的思維藝術】 (5)Angular中Rxjs的應用示例
      下一篇:Linux系列:shell編程之文檔操作(3)
      相關文章
      国产精品久久久久久亚洲影视| 伊人婷婷综合缴情亚洲五月| 亚洲成Av人片乱码色午夜| 亚洲色大成网站www久久九| 日韩亚洲Av人人夜夜澡人人爽| 国产亚洲美女精品久久久2020| 亚洲成?Ⅴ人在线观看无码| 国产午夜亚洲精品不卡| 亚洲av永久无码精品秋霞电影秋| 亚洲色大情网站www| 亚洲黄页网在线观看| 亚洲综合色婷婷在线观看| 中文字幕在线日亚洲9| 亚洲黄色激情视频| 2019亚洲午夜无码天堂| 亚洲人成色99999在线观看| 中文字幕亚洲综合久久综合| 亚洲成人激情小说| 亚洲爆乳大丰满无码专区| 蜜芽亚洲av无码一区二区三区 | 亚洲第一福利视频| 亚洲黄色网址在线观看| 亚洲人成激情在线播放| 欧洲 亚洲 国产图片综合| 亚洲欧美日韩自偷自拍| 精品国产亚洲一区二区三区在线观看| 日韩亚洲综合精品国产| 亚洲麻豆精品国偷自产在线91| 亚洲精品无码永久在线观看| 久久久久无码专区亚洲av| 亚洲理论电影在线观看| 亚洲av网址在线观看| 久久精品国产亚洲av日韩| 亚洲短视频在线观看| 亚洲大成色www永久网址| 国产成人高清亚洲一区91| 精品国产亚洲男女在线线电影| 亚洲男同帅GAY片在线观看| 亚洲av成人无码久久精品| 亚洲午夜久久久久久尤物| 亚洲成a人无码亚洲成av无码|