PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

如何使用编码规范与静态代码检查插件

醉折花枝作酒筹
醉折花枝作酒筹 转载
2021-05-06 09:59:29 2816浏览

本篇文章给大家介绍一下编码规范与静态代码检查插件的使用方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

Alibaba Java Coding Guidelines

首先介绍的是阿里巴巴的编码规约,相信大家对这个都比较熟悉了。安装方式是在

settings->plugins里面搜索
Alibaba Java Coding Guidelines-
>install->重启Idea

这个插件侧重于代码的缺陷,详细的编码规范在《阿里开发手册》已经定义,大家有兴趣的可以看看。

如果要检查整个项目所有文件的话,可以关闭窗口中的类,然后按Ctrl+Alt+Shift+J 快捷键,或者如下图操作也是可以的。

在这里插入图片描述
检查的结果如图所示:

在这里插入图片描述

如果要对单个的文件进行检查的话,可以在类上右键,选中Alibaba Coding Guidelines Analyze

CheckStyle

第二个要介绍的插件是CheckStyle插件。这个插件侧重于代码的格式检查。使用方式如下图:在checkstyle面板,点击检查按钮进行检查,也可以检查单个文件。

在这里插入图片描述在这里插入图片描述
如上图,可以看到都是一些缩进啥的编码规范,可以不用太关注。

Findbugs

findBugs-idea的作用侧重于发现代码中可能存在的bug。它检查类或者JAR 文件,将字节码与一组缺陷模式(自带检测器)进行对比以发现可能的问题。执行Findbugs编码规约扫描PMD

(Programming Mistake Detector) 是一个开源的静态代码检查工具。PMD 支持多种语言,比如项目本身的 Java,Salesforce 相关的 Apex、VisualForce,还有 JavaScript、XML 等。PMD 对于各种语言都预设了一套代码规则,也支持开发自定义规则,可以使用 Java 类或者XPath。

选中一段代码,然后右键Run PMD->Pre Defined,这里有许多检查类型可以选择,有代码样式,设计等等。

在这里插入图片描述

SonarLint

最后要介绍的是SonarLint插件,这个插件和Alibaba Java Coding Guidelines插件是实际项目中用到的比较多的两个插件。下面就详细介绍一下插件的安装和使用。

安装

settings->plugins里面搜索
SonarLint
>install->重启Idea

配置SonnarLint 检查地址:

settings->Tools->SonarLint->Settings 
中增加sonarqube的地址

如下图配置了sonarqube的地址

在这里插入图片描述
使用SonarList

配置好SonarList之后,就是使用了,SonarLint既可以对所有文件进行检查,检查全部文件的方式是:点击Analyze->Analyze All Files with SonarLint

在这里插入图片描述

又可以单个文件检查,单个文件就是在文件编辑区右键选中:

在这里插入图片描述

生成的报告如下:这里既有违规的问题(即潜在的Bugs & Vulnerabilities)。比如:NullPointerException,又有代码的坏味道(Code Smells)。一般而言Bug级别的问题需要我们处理,坏味道可以忽略。还有另外一个指标就是代码的重复率,即代码内部的重复代码。

在这里插入图片描述

各类插件的比较

检查侧重点不同

工具分析对象侧重应用技术
Alibaba Java Coding Guidelines源代码代码缺陷Inspection机制提供实时检测功能
CheckStyle源文件格式缺陷缺陷模式匹配
FindBugs字节码代码缺陷缺陷模式匹配,数据流分析
PMD源代码代码缺陷缺陷模式匹配
SonarList源代码代码缺陷缺陷模式匹配,多个维度处理

检查项不同

工具目的检查项
Alibaba Java Coding Guidelines扫描出所有潜在的代码隐患方法名 参数名 成员变量 局部变量 枚举类 try-catch
CheckStyle检查Java源文件是否与代码规范相符Javadoc注释 命名规范 标题import语句 体积大小 空白
FindBugs基于Bug Patterns 概念,查找javabytecode(.class文件)中的潜在bugNullPoint空指针检查,没有不合理关闭资源
PMD检查Java源文件潜在问题未使用的本地变量 空的catch块,未使用参数空 if语句,重复的import语句,未使用的私有方法 可能是Singleton的类 短/长变量及方法名字
SonarList扫描出所有潜在的代码隐患方法名 参数名 成员变量 局部变量 枚举类 try-catch

相关免费学习推荐:java基础教程

以上就是如何使用编码规范与静态代码检查插件的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除