谷歌開源的代碼評(píng)審規(guī)范,值得借鑒!

Java技術(shù)棧
www.javastack.cn
關(guān)注閱讀更多優(yōu)質(zhì)文章
本文經(jīng)機(jī)器之心(微信公眾號(hào):almosthuman2014)授權(quán)轉(zhuǎn)載,禁止二次轉(zhuǎn)載
項(xiàng)目作者:Max Kanat-Alexander 機(jī)器之心編譯
谷歌以前建立了一套通用的工程實(shí)戰(zhàn)指南,它差不多囊括了所有編程語言與各種類型的項(xiàng)目。今天,谷歌將這一套代碼評(píng)審(Code Review)規(guī)范開源了出來,它代表了谷歌最佳實(shí)戰(zhàn)經(jīng)驗(yàn)的集合。
項(xiàng)目地址:https://github.com/google/eng-practices

代碼評(píng)審標(biāo)準(zhǔn)
代碼評(píng)審希望達(dá)到什么
在代碼評(píng)審中導(dǎo)航修改列表
代碼評(píng)審的速度
如何寫審查的評(píng)論
處理代碼評(píng)審的回退
寫一個(gè)好的修改列表描述
構(gòu)建一些小的修改列表
如何處理代碼評(píng)審者的評(píng)論

設(shè)計(jì):代碼是不是經(jīng)過精心的設(shè)計(jì),并適合我們的系統(tǒng)?
功能性:代碼的行為是否和作者的意圖保持一致?代碼的行為方式對(duì)用戶是否正常?
復(fù)雜度:代碼能更簡(jiǎn)單一些嗎?在未來,其它開發(fā)者能更容易地理解并使用這些代碼嗎?
測(cè)試:代碼是不是正確的,是不是通過了精心設(shè)計(jì)的自動(dòng)測(cè)試?
命名:開發(fā)者是不是選擇易于理解的名稱給變量、類和方法進(jìn)行命名?
評(píng)論:代碼評(píng)論是不是足夠清晰并有用?
風(fēng)格:代碼是不是采用了標(biāo)準(zhǔn)的編寫風(fēng)格?
文檔:開發(fā)者是不是更新了相關(guān)的文檔?

谷歌風(fēng)格指南:http://google.github.io/styleguide/
點(diǎn)擊「閱讀原文」獲取面試題大全~
