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