Sonar是一個用于代碼質(zhì)量管理的開源平臺,用于管理源代碼的質(zhì)量
定西網(wǎng)站建設公司創(chuàng)新互聯(lián),定西網(wǎng)站設計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為定西上1000+提供企業(yè)網(wǎng)站建設服務。企業(yè)網(wǎng)站搭建\外貿(mào)營銷網(wǎng)站建設要多少錢,請找那個售后服務好的定西做網(wǎng)站的公司定做!
通過插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十幾種編程語言的代碼質(zhì)量管理與檢測
Sonar可以從以下七個維度檢測代碼質(zhì)量,而作為開發(fā)人員至少需要處理前5種代碼質(zhì)量問題
1. 不遵循代碼標準
sonar可以通過PMD,CheckStyle,Findbugs等等代碼規(guī)則檢測工具規(guī)范代碼編寫
2. 潛在的缺陷
sonar可以通過PMD,CheckStyle,Findbugs等等代碼規(guī)則檢測工具檢測出潛在的缺陷
3. 糟糕的復雜度分布
文件、類、方法等,如果復雜度過高將難以改變,這會使得開發(fā)人員難以理解它們
且如果沒有自動化的單元測試,對于程序中的任何組件的改變都將可能導致需要全面的回歸測試
4. 重復
顯然程序中包含大量復制粘貼的代碼是質(zhì)量低下的,sonar可以展示源碼中重復嚴重的地方
5. 注釋不足或者過多
沒有注釋將使代碼可讀性變差,特別是當不可避免地出現(xiàn)人員變動時,程序的可讀性將大幅下降
而過多的注釋又會使得開發(fā)人員將精力過多地花費在閱讀注釋上,亦違背初衷
6. 缺乏單元測試
sonar可以很方便地統(tǒng)計并展示單元測試覆蓋率
7. 糟糕的設計
通過sonar可以找出循環(huán),展示包與包、類與類之間的相互依賴關(guān)系,可以檢測自定義的架構(gòu)規(guī)則
通過sonar可以管理第三方的jar包,可以利用LCOM4檢測單個任務規(guī)則的應用情況, 檢測耦合。