开发人员通常需要各种“助手”——包括静态代码分析器,利用它们可以在开发的早期阶段发现并修复有缺陷的代码。感兴趣的同学可以参加java培训,你可以了解一些静态分析器并学会使用它们。
IntelliJ IDEA内置分析器
IntelliJ IDEA中内置的Java代码静态分析器与专门的静态分析工具一样好。通过检查来搜索可疑、杂乱或有缺陷的代码片段。他们使用各种现代静态分析方法:数据流分析和模式匹配。
由于静态分析一直在代码编辑模式下运行,因此在IntelliJ IDEA中,你可以在错误发生几秒钟后修复错误,编辑器突出显示有缺陷的代码片段。
SonarJava
SonarJava是SonarSource提供的Java静态代码分析器,它将此工具定位为其他工具中最好的一个。在java培训中,也有关于这个分析器的学习与使用。SonarJava 的特征有:
150+错误检测规则;
350+检测代码气味的规则;
40+检测潜在漏洞的规则;
与Maven、Gradle、Ant、Eclipse、IntelliJ IDEA、VS代码的集成;
能够扩展自定义诊断规则;
SAST专用工具:大多数诊断规则是根据CWE、CERT、OWASP制定的。
PVS-Studio
PVS-Studio是基于Spoon开源库。它接收源代码作为输入,建立了一个具有语义信息的设计良好的AST模型。
目前,这个分析器使用超过105条诊断规则来检测各种代码缺陷。它们包括打字错误、取消对空引用的引用、无法访问的代码、数组索引超出范围、违反方法使用约定等。通过参加java培训,你能在短时间学会java的很多知识和技能,包括静态分析器的使用。
PMD
PMD是一个开源的静态分析器。它检测常见的开发错误:未使用的变量、空块、创建不必要的对象等等。
尽管PMD分析了源代码,但还是建议在分析之前构建项目。这允许提取有关所分析代码中使用的类型的信息。
如果我们查看所有的诊断规则,那么PMD更关注于解决编码风格问题和检测明显错误。诊断规则可能相互矛盾,因此你需要在使用分析仪之前对其进行配置。
到目前为止,有许多工具可用,它们各有优缺点,但不要只停留在一个分析器上,使用几个相互补充的分析器-它们可以创建一个强大的屏障,保护你的代码不受bug和漏洞的影响。想学习怎么使用这些分析器,不妨报个java培训班,有经验丰富的专业讲师线下面授指导教学,及时解决学习上的问题,让你获得快速提升。