sonarqube问题修改总结
一、代码复杂度问题
1、类的复杂度过高。
说明:Split this class into smaller and more specialized ones to reduce its dependencies on other classes from 24 to the maximum authorized 20 or less.
原因:类之间的耦合度过高,引用了太多其他的类,
错误示例:
修改建议:根据面向对象的单一职责进行设计,进行降耦。
2、多重循环嵌套
说明:代码块中包含多个if、for、while、switch,影响阅读,难以维护
错误示例
SonarQube工作原理
SonarQube 并不是简单地将各种质量或覆盖率检测工具的结果(例如 CheckStyle、JACOCO 等)直接展现给客户,而是通过不同的插件算法来对结果进行再加工,并蕞终以量化的方式来衡量代码质量,从而方便地对不同规模和种类的工程进行相应的代码质量管理,以便进行有针对性的代码修复或重构。
SonarQube 在进行代码质量管理时,会从以下的七个纬度对项目代码质量进行分析
Sonarqube权限配置
禁止游客访问
全局权限设置(禁止匿名用户权限、用户组全局权限设置)
权限模板设置,即项目权限设置。
Sonarqube质量阀默认质量阀设置,没有质量阈值的项目默认采用此设置。
自定义质量阀,可以选择适用于哪些项目。
Sonarqube质量配置
这里以 Java 语言为例说明,如下是 Sonar 内置默认的质量配置(规则集合)。
规则可以根据需要进行设置,还可以选择自定义的 PMD、Checkstyle 规则配置文件。
修改自定义配置为默认。
另外,还可以或者挂起规则,注意继承的规则不可挂起。
以上信息由专业从事中国sonarqube 中文的华克斯于2024/12/21 8:49:12发布
转载请注明来源:http://szhou.mf1288.com/hksxxkj-2827501511.html