一、概述
本文講解 Sonar 的簡介。
二、Sonar 簡介
1. 定義
sonar是一個代碼質量管理的開源平臺,用於管理源代碼的質量,通過插件形式,可以支持包括java、C#、JavaScript等二 十餘種編程語言的代碼質量管理與檢測。
2. 特性
- 對代碼複雜度的一個分析
複雜度過高導致的後果
(1) 很難理解
(2) 很難維護
(3) 很容易出錯 - 檢測重複的代碼
函數更改,很容易忘記一起更改。 複用代碼可以提高效率 - 檢測單元測試的覆蓋率
白盒測試的一種方法 - 檢測代碼是否符合相應標準
規範化和標準化,提高代碼的可讀性 - 沒有足夠的或者過多的註釋
如果說註釋太少:閱讀性過低
註釋過多:開發人員將花費太多時間閱讀和理解,違背了初衷 - 檢測存在的潛在的bug
比如死代碼等 - 檢測設計和架構
檢測耦合等
3. SonarQube 的官方文檔
SonarQube是管理代碼質量的一個開放平臺,可以快速的定位代碼中潛在的或者明顯的錯誤。
官網見 https://www.sonarqube.org/
點擊上文中的 Documentation
就可以看最新鮮的文檔啦!https://docs.sonarqube.org/latest/
如下圖所示:
如果覺得英文實在是效率太低,可以看看中文的這種,詳細介紹可以見 www.sonar.org.cn
比如我隨手點進去的這篇文章 http://www.sonar.org.cn/install/2414.html
三、總結
本文初步瞭解了 SonarQube 的相關信息,不足之處是我到現在也沒有搞懂 Sonar 和 SonarQube 是有什麼關係,看好多文章都把它們混爲一談,或許它們就是一個東西?且等我搞懂了再來補充。