Sonar簡介
Sonar是壹個用於代碼質量管理的開源,用於管理源代碼的質量,可以從七個維度檢測代碼質量
通過插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十幾種編程語言的代碼質量管理與檢測
sonarQube能帶來什麽?
Developers' Seven Deadly Sins
糟糕的復雜度分布
文件、類、方法等,如果復雜度過高將難以改變,這會使得開發人員難以理解它們,
且如果沒有自動化的單元測試,對於程序中的任何組件的改變都將可能導致需要全面的回歸測試
2.重復
顯然程序中包含大量復制粘貼的代碼是質量低下的
sonar可以展示源碼中重復嚴重的地方
3.缺乏單元測試
sonar可以很方便地統計並展示單元測試覆蓋率
4.沒有代碼標準
sonar可以通過PMD,CheckStyle,Findbugs等等代碼規則檢測工具規範代碼編寫
5.沒有足夠的或者過多的註釋
沒有註釋將使代碼可讀性變差,特別是當不可避免地出現人員變動時,程序的可讀性將大幅下降
而過多的註釋又會使得開發人員將精力過多地花費在閱讀註釋上,亦違背初衷
6.潛在的bug
sonar可以通過PMD,CheckStyle,Findbugs等等代碼規則檢測工具檢測出潛在的bug