爲何要進行Code Review?

目的:html


    Code Review的主要目的,是經過開發人員之間的互相查看代碼,來保證代碼質量,以便交給測試人員的時候,起碼保證代碼質量是比較高的。這只是Code Review的一個主要功能,其實,Code Review還能夠幫助新手學習高手的代碼風格及編程思想,能快速提升新手的編程能力。算法


任務:數據庫

    其實Code Review主要檢查代碼中是否存在如下方面問題:代碼的一致性、編碼風格、代碼的安全問題、代碼冗餘、是否正確設計以知足需求(性能、功能等等),具體內容以下:編程

  1. 完整性檢查(Completeness)
        代碼是否徹底實現了設計文檔中提出的功能需求
        代碼是否已按照設計文檔進行了集成和Debug
        代碼是否已建立了須要的數據庫,包括正確的初始化數據
        代碼中是否存在任何沒有定義或沒有引用到的變量、常數或數據類型
    數組

  2. 一致性檢查(Consistency)
        代碼的邏輯是否符合設計文檔
        代碼中使用的格式、符號、結構等風格是否保持一致
    安全

  3. 正確性檢查(Correctness)
        代碼是否符合制定的標準
        全部的變量都被正肯定義和使用
        全部的註釋都是準確的
        全部的程序調用都使用了正確的參數個數
    框架

  4. 可修改性檢查(Modifiability)
        代碼涉及到的常量是否易於修改(如使用配置、定義爲類常量、使用專門的常量類等)
        代碼中是否包含了交叉說明或數據字典,以描述程序是如何對變量和常量進行訪問的
        代碼是否只有一個出口和一個入口(嚴重的異常處理除外)
    ide

  5. 可預測性檢查(Predictability)
        代碼所用的開發語言是否具備定義良好的語法和語義
        是否代碼避免了依賴於開發語言缺省提供的功能
        代碼是否無心中陷入了死循環
        代碼是不是否避免了無窮遞歸
    性能

  6. 健壯性檢查(Robustness)
        代碼是否採起措施避免運行時錯誤(如數組邊界溢出、被零除、值越界、堆棧溢出等)
    學習

  7. 結構性檢查(Structuredness)
        程序的每一個功能是否都做爲一個可辯識的代碼塊存在
        循環是否只有一個入口

  8. 可追溯性檢查(Traceability)
        代碼是否對每一個程序進行了惟一標識
        是否有一個交叉引用的框架能夠用來在代碼和開發文檔之間相互對應
        代碼是否包括一個修訂歷史記錄,記錄中對代碼的修改和緣由都有記錄
        是否全部的安全功能都有標識

  9. 可理解性檢查(Understandability)
        註釋是否足夠清晰的描述每一個子程序
        是否使用到不明確或沒必要要的複雜代碼,它們是否被清楚的註釋
        使用一些統一的格式化技巧(如縮進、空白等)用來加強代碼的清晰度
        是否在定義命名規則時採用了便於記憶,反映類型等方法
        每一個變量都定義了合法的取值範圍
        代碼中的算法是否符合開發文檔中描述的數學模型

  10. 可驗證性檢查(Verifiability)
        代碼中的實現技術是否便於測試

本文轉自博客園:http://www.cnblogs.com/Apolloge/archive/2007/03/02/661793.html

相關文章
相關標籤/搜索