潛魚在淵

          Concentrating on Architectures.

          posts - 77, comments - 309, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          代碼檢查指南

          Posted on 2005-12-01 20:32 非魚 閱讀(2154) 評論(1)  編輯  收藏 所屬分類: Java技術
              代碼檢查對于開發非常重要,一些大規模的應用變得越來越難以維護,往往和代碼檢查直接相關。對于一個規范的開發過程而言,代碼檢查是重要但容易被忽視的一個步驟:或者檢查不仔細、不認真,或者檢查的內容不足。

              代碼檢查主要包括兩個方面:一是設計附合度檢查;一是代碼邏輯檢查。

              設計附合度檢查

              檢查代碼是否按照設計文檔編寫。首先需要檢查的就是包依賴關系,是否在代碼中引入了沒有在設計中指定的包?這是最重要的一個檢查點,引入了設計中未定義、 未指明的包是大規模應用越來越難以維護的直接罪魁禍首之一。設計可能沒有考慮到需要附加的包中的類,這是正常的。當編寫代碼的程序員遇到這種情況時,應該 和設計人員溝通,一起來解決這個問題,而不是養成隨手增加引入包的習慣。如果每個程序員都這樣操作,可以想像一個項目最終會變成什么樣子。

              其次,要檢查設計中確定的方法的Signature。是否由指定的protected變成了public?是否修改了方法名、調用參數和返回類型?這些細 節也可能會違反設計師的初衷,把本來設計師深思熟慮的結果變成考慮不足的代碼。這些地方是影響代碼微結構的因素之一。

              設計附合度檢查一般由設計人員執行。

              代碼邏輯檢查

              代碼邏輯檢查是多數實行代碼檢查制度的公司重點檢查的內容。它檢查代碼是否存在邏輯上的錯誤。這項檢查的目的是盡早發現并解決潛在的缺陷,一般由有經驗的程序員同行執行。

              代碼檢查,我們遺漏了什么?

              代碼邏輯檢查不是代碼檢查的主要內容,因為在調試、測試階段邏輯問題基本上都可以被發現。在代碼檢查階段檢查代碼邏輯,目的僅僅是為了降低成本,早發現錯誤可以大速度降低成本。

              代碼檢查的真正重點,也是我們忽略的部分,就是設計附合度的檢查。任何調試、測試都不能發現這方面的問題,因為它是附合邏輯的;存在設計附合度問題的程序在運行上不會有任何問題,它只是讓你的設計變成一堆廢物,讓你的軟件越來越不可維護。

              現在你知道了,不要再忽略這個檢查了!

          評論

          # re: 代碼檢查指南  回復  更多評論   

          2005-12-22 14:20 by idontknow
          估計你實際做的pr非常少。code 的pr幾年前就有人專門寫了一本書了,建議你還是看完再說吧。
          主站蜘蛛池模板: 藁城市| 鹤岗市| 阜新市| 阳山县| 民丰县| 会东县| 靖远县| 石棉县| 宜都市| 文山县| 道孚县| 和田市| 大庆市| 临夏县| 多伦县| 尚志市| 彭阳县| 玛多县| 吴旗县| 竹溪县| 铁岭县| 伊宁市| 花垣县| 清水河县| 台北县| 安义县| 昌图县| 清镇市| 抚远县| 郴州市| 阿克| 宣城市| 北川| 大方县| 东乌珠穆沁旗| 扬中市| 望谟县| 黔西| 河间市| 保康县| 炎陵县|