代碼審查軟件Gerrit簡介
大?。?/span>0.5 MB 人氣: 2017-10-10 需要積分:1
推薦 + 挑錯(cuò) + 收藏(0) + 用戶評(píng)論(0)
標(biāo)簽:gerrit(2207)
代碼審核(Code Review)是軟件研發(fā)質(zhì)量保障機(jī)制中非常重要的一環(huán),但在實(shí)際項(xiàng)目執(zhí)行過程中,卻因?yàn)榉N種原因被Delay甚至是忽略。在實(shí)踐中,給大家推薦一款免費(fèi)、開放源代碼的代碼審查軟件Gerrit。1. Why Code Review
Code Review是什么?
Code Review最直觀的解釋即看代碼。常規(guī)的做法為自己看,有時(shí)代碼邏輯問題可能自己看不出來,需要找同事一起看,在大家知識(shí)體系相對(duì)平均的情況下可能需要花錢專門的公司幫助查看。
Code Review需要看哪些?對(duì)于剛?cè)肼殘?chǎng)或者剛接觸到Coding的新人來說,代碼風(fēng)格是比較重要的一塊。除此之外,編碼規(guī)范及代碼結(jié)構(gòu)寫法,框架和工具的選型,具體項(xiàng)目的業(yè)務(wù)邏輯,安全隱患,性能問題等都可以通過review的方式發(fā)現(xiàn)。Code Review從前往后大致分為結(jié)對(duì)編程,提交代碼后,測(cè)試之前,發(fā)版之前,發(fā)版之后等幾個(gè)階段,越往后,Code Review的效果越差,修復(fù)的成本也越來越高。
為什么一定要做入庫前Code Review?
首先,代碼審查的最大的功用是純社會(huì)性的。如果你在編程,而且知道將會(huì)有同事檢查你的代碼,你編程態(tài)度就完全不一樣了。你寫出的代碼將更加整潔,有更好的注釋和程序結(jié)構(gòu)。
其次,偷懶是人的天性,從節(jié)約成本的角度考慮,大家一般會(huì)選擇在測(cè)試之前無限制的Delay Code Review。入庫前做Code Review便是成本和效果之間最佳平衡點(diǎn),它能及時(shí)發(fā)現(xiàn)問題,進(jìn)行修改后確保代碼質(zhì)量。
最后,代碼審查能傳播知識(shí)。在很多開發(fā)團(tuán)隊(duì)里,經(jīng)常每個(gè)人負(fù)責(zé)一個(gè)核心模塊,每個(gè)人都只關(guān)注自己的模塊。除非是同事的模塊影響了自己的程序,他們從不相互交流。這種情況的后果是,每個(gè)模塊只有一個(gè)人熟悉里面的代碼。如果這個(gè)人休假或辭職了,其他人則束手無策。通過代碼審查,至少會(huì)有兩個(gè)人熟悉這些程序——作者,以及審查者。審查者并不能像程序的作者一樣對(duì)程序十分了解,但至少他會(huì)熟悉程序的設(shè)計(jì)和架構(gòu),這是極其重要的。
2. Gerrit簡介
Gerrit是Google為Android系統(tǒng)研發(fā)量身定制的一套免費(fèi)開源的代碼審核系統(tǒng),它在傳統(tǒng)的源碼管理協(xié)作流程中強(qiáng)制性引入代碼審核機(jī)制,通過人工代碼審核和自動(dòng)化代碼驗(yàn)證過程,將不符合要求的代碼屏蔽在代碼庫之外,確保核心代碼多人校驗(yàn)、多人互備和自動(dòng)化構(gòu)建核驗(yàn)。
Gerrit之前的系統(tǒng)架構(gòu):
Gerrit之后的系統(tǒng)架構(gòu):
通過Gerrit機(jī)制將代碼做分隔。
Gerrit適用性
幾乎任何需要正式發(fā)布的項(xiàng)目都應(yīng)當(dāng)使用Gerrit來進(jìn)行代碼審查,如果Team中有新人,必須使用Gerrit確保代碼質(zhì)量。
非常好我支持^.^
(0) 0%
不好我反對(duì)
(0) 0%