使用这两个IDEA 插件,代码再也不会被嫌弃了!!!

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!

SonarLint(Sonar) 代码质量管理

什么是Sonar

Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量 通过插件形式。可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测,Sonar可以从以下七个维度检测代码质量,而作为开发人员至少需要处理前5种代码质量问题。

  • 不遵循代码规范

    Sonar可以通过PMD、CheckStyle、FindBugs等代码规范来检查编写的代码。

  • 潜在的缺陷

    Sonar可以通过PMD、CheckStyle、FindBugs等代码检查工具来扫描代码中潜在的缺陷

  • 糟糕的复杂度分布

    文件、类、方法等,如果复杂度过高将难以改变,会让开发人员难以理解它们并且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试

  • 重复

    程序中包含大量复制粘贴的代码是质量低下的,Sonar可以展示源码中重复严重的地方。

  • 注释不足或者过多

    没有注释的代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降 而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷。

  • 缺乏单元测试

    Sonar可以很方便地统计并展示单元测试覆盖率。

  • 糟糕的设计

    Sonar可以找出循环,展示包与包、类与类之间相互依赖关系,可以检测自定义的架构规则 通过Sonar可以管理第三方的jar包,可以利用LCOM4检测单个任务规则的应用情况, 检测耦合。

SonarLint

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!_第1张图片

  • idea下载与安装

  • 在需要检测的单个文件或者单个项目上右键 --> Analyze --> Analyze with SonarLint或者选中文件或目录,点击菜单栏 Analyze --> Analyze with SonarLint

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!_第2张图片

  • 可以禁用某些Sonar规则

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!_第3张图片

  • 如果想要自定义的规则时,可以绑定到SonarCloud、SonarQube

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!_第4张图片

  • 查看检查结果

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!_第5张图片

使用这个代码质量检测工具以后,在一定程度上可以保证代码的质量,对于每一个问题,SonarLint都给出了示例,还有相应的解决方案,教我们怎么修改,极大的帮助了各位开发同学:

例如:对于日期类型尽量用LocalDate、LocalTime、LocalDateTime,还有重复代码、潜在的空指针异常、循环嵌套等问题。

使用代码规范与质量检测工具以后,很多东西就可以量化了,比如bug率、代码重复率等,还可以自定义各种指标,方便管理人员查看。

SonarQube

SonarQube是一个开源的代码质量管理平台

  • 本地搭建SonarQube

下载

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!_第6张图片

解压与启动

解压后进入bin目录,根据自己的电脑系统,选择进入不同的目录:

在这里插入图片描述

执行启动命令: ./sonar.sh

启动成功后,访问 http://localhost:9000 用管理员账号(admin/admin)登录

接下来,为了把检测的结果传到服务器,我们需要配置一个Scanner,并且在项目中添加 sonar-maven-plugin 插件

<plugin>
  <groupId>org.sonarsource.scanner.mavengroupId>
  <artifactId>sonar-maven-pluginartifactId>
  <version>3.6.0.1398version>
plugin>

然后执行命令:mvn clean compile sonar:sonar

再次刷新 http://localhost:9000/ 就能看到项目的统计信息了。

Alibaba代码规约插件

安装:

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!_第7张图片

使用:

使用这两个IDEA 插件,代码再也不会被嫌弃了!!!_第8张图片

你可能感兴趣的:(Java,intellij-idea,单元测试,java)