最近学习Mybatis的官方文档,看到了【项目文档】一节有很多内容没有见过,做个笔记,理解一下。

  

PMD 扫描Java源代码,查找潜在的问题,如:

  • 可能的bugs,如空的try/catch/finally/switch声明
  • 死亡的代码,没有使用的本地变量,参数和私有方法
  • 不合标准的代码,如String/StringBuffer用法
  • 过于复杂的表达式,如不必要的if表达式
  • 重复的代码,拷贝、粘贴的代码

FindBugs 它用来查找Java代码中存在的bug。它使用静态分析方法标识出Java程序中上百种潜在的不同类型的错误。

Checkstyle 它定义了一系列可用的模块,每一个模块提供了严格程度(强制的,可选的…)可配置的检查规则。规则可以触发通知(notification),警告(warning)和错误(error)。

现在有很多查看这些工具的处理结果的方式:

  • XML格式:这些工具都可以产生XML文件,这些XML文件能用来产生HTML报表或者是被别的工具用来浏览分析的结果。
  • HTML格式:HTML格式是最受欢迎的产生报表和团队间分享的的方式,你也可以用xsl表格创建你自己的报表。
  • IDE插件:几乎所有叫得上名字的IDE都给这些工具提供了插件,这使得发现源码中存在的所有问题几乎变成可能。

  代码质量工具的一个问题是,它们有时候会给开发者提示很多不是错误的错误-也叫做假阳性(false positives)。当这种情况发生的时候,开发者可以学着忽略工具的输出信息,或者是把这些输出全部抛弃掉。

  为了更好的利用这些工具的输出结果,给开发者一个更有用的视图,最好是有一种只关注我们想要的东西的方式。本文中,我们将找出其他有趣的方式来更好的利用所有这些有名的Java静态分析工具的输出结果,然后可以像查询数据库那样查询这些结果。

JArchitect和CQLinq

JArchitect是另一个静态分析工具,它弥补了其他工具(的不足),它是使用一种基于Linq(CQLinq)的代码查询语言像查询数据库那样来查询代码。

JArchitect3的以前版本,只能查询从JArchitect提取出来的分析数据,但是从JArchitect4开始,可以把许多其他静态分析工具的输出结果包含进来,然后使用CQLinq做查询。

这个是项目经理用来统计工作量的吧,哈哈。 

                                                     参考:如何更好地利用Pmd、Findbugs和CheckStyle分析结果

 

最新文章

  1. MySQL常用命令
  2. order by用法
  3. IntelliTrace简介
  4. MUI - 图片预览(perviewimage)的优化
  5. [转载]ArcGIS Engine 中的多线程使用
  6. spring beans源码解读
  7. 百度的一个Ajax跨域方法 JavaScript是没有域的限制
  8. ASP.NET网站发布-允许更新此预编译站点 打勾与不打勾的区别
  9. ubuntu14.04中解压缩window中的zip文件,文件名乱码的解决方法
  10. 用Robocod游戏来学习JAVA
  11. Controller.RedirectToAction 方法
  12. JVM调优总结(八)-典型配置举例2
  13. CodeForces 718C Sasha and Array
  14. PHP:基于百度大脑api实现OCR文字识别
  15. 无需认证的mail,适用于ZABBIX等运维系统
  16. liunx驱动----构造和运行模块
  17. 关于Struts2中 Action 配置method的解读
  18. springboot 中打印 sql 语句
  19. java开发前的配置
  20. Android之TextView灵活使用

热门文章

  1. freemarker小例子
  2. HtmlHelper—DropDownList:SelectList、SelectListItem
  3. 使用Vibrator控制手机振动
  4. socket.io遇到的问题
  5. 二模 (2) day1
  6. warning malformed '#pragma pack(push[, id], n)' - ignored
  7. 文件浏览器及数码相框 -2.3.1freetype_pc
  8. Flux Demo解析
  9. css3制作六边形图片
  10. BZOJ 4723 Flappy Bird