qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          提高代碼質(zhì)量:代碼審查

          在項目開發(fā)中,代碼質(zhì)量是非常重要的一環(huán)。高質(zhì)量的代碼對項目完成質(zhì)量、能否按時完工有重大影響。而一個團隊中開發(fā)成員的配置往往是金字塔形的?;陂_發(fā)成本考慮,項目主管或小組長一般由經(jīng)驗豐富的資深高級程序員擔任,開發(fā)成員則由普通程序員、新員工、實習生組成。各個開發(fā)成員水平參差不齊,以及該行業(yè)內(nèi)開發(fā)人員的高流動性。這樣的條件和環(huán)境必然帶來代碼質(zhì)量問題。項目主管難于把握項目進度,很容易造成項目延期,即使加班不少。

            既然問題存在了,就必須解決它。解決的思路就是代碼審查

            代碼審查的前提:

            1、統(tǒng)一項目組內(nèi)部代碼審查必要性思想,消除猜忌,建立融洽的團隊合作氣氛。代碼審查不是挑刺。不建議使用審查中問題的發(fā)現(xiàn)率作為績效考評標準。

            2、確立合乎自己項目組要求的代碼規(guī)范文檔;

            3、確立代碼審查者:項目組成員少于3個,組長是審閱者。多了則要適當按模塊分小組,每組不多余3人,每小組選經(jīng)驗豐富的程序員做為代碼審閱者。要求代碼審閱者與被審閱人最好為同一模塊開發(fā)者。小組長的工作安排時就應(yīng)考慮其代碼審查職能,并相應(yīng)減少其代碼工作量。

            4、確立審查標準、部署審查代碼工具。普通程序員代碼提交之前由代碼審閱者實施審查。審閱代碼者多于2人同時又有代碼提交時,審閱代碼者互審。

            代碼審查內(nèi)容:

            1、代碼風格。通過代碼復查,一方面督促開發(fā)人員按照規(guī)范編寫代碼,另一方面也使開發(fā)人員自身形成良好的編程習慣。代碼風格的審查,由于內(nèi)容比較單一,我們常常可以通過一些代碼復查的工具來自動完成,提高復查的效率。

            2、重大缺陷。預先整理編寫代碼審查的重大缺陷列表,并根據(jù)實踐經(jīng)驗不斷更新、補充、積累審查項目,并在每次審查中逐一檢查。這些審查項目根據(jù)經(jīng)驗劃分等級、優(yōu)先級。

            3、設(shè)計邏輯與思路的審查。這部分的審查是代碼復查中最核心、最有價值的部分。代碼風格與重大缺陷的審查,雖然重要但簡單而機械,可以通過軟件自動檢查;而設(shè)計邏輯與思路的審查,卻是復雜而有深度的審查,需要有一定理論深度和編碼經(jīng)驗的人才能完成,而且對新手尤其重要。在新手完成編碼以后,讓老手去進行代碼復查,指出新手的問題,指導新手設(shè)計。這樣的過程最初可能需要重構(gòu),甚至重新編碼。新手的進步、成長速度是加快的。老手通過對新手的指導,整理和升華自己的設(shè)計思路與理論,同時也是對自己另一方面的鍛煉與提高。最終整個團隊都得到了提高。

            但代碼審查無疑也帶來了很高的代價。時間、人力與代碼質(zhì)量,其本身就是魚和熊掌不可兼得。因此不同公司、同公司不同發(fā)展時期就會采取不同的代碼復查策略。審時度略,實事求是,每個項目組都應(yīng)該提出適合自己的代碼審查方法。

          posted on 2013-02-26 11:00 順其自然EVO 閱讀(243) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2013年2月>
          272829303112
          3456789
          10111213141516
          17181920212223
          242526272812
          3456789

          導航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 清原| 阿坝县| 突泉县| 沾益县| 汉阴县| 威远县| 德兴市| 奇台县| 彭泽县| 嵩明县| 清原| 申扎县| 万安县| 青州市| 乐平市| 枝江市| 乐业县| 广汉市| 贺州市| 襄城县| 长沙县| 濉溪县| 和林格尔县| 高要市| 甘肃省| 怀远县| 莎车县| 中山市| 浦东新区| 长丰县| 琼海市| 湖口县| 剑川县| 望奎县| 嘉鱼县| 云林县| 淮南市| 建瓯市| 津市市| 德令哈市| 永嘉县|