这个时候说 findbugs ??? 哈哈 炒冷饭?
不是, 我就是写下来 自己记录一下,以后推荐别人用findbugs时就可以 复制 粘贴过去 给他看了.

=========================================

推荐大家一个工具 findbugs ( http://findbugs.sourceforge.net/ 说实话,他的网站做的超级烂!!!).

我原先的公司对市面上常见的类似工具做过评审,最后敲定使用 findbugs (虽然他的网站做的超级烂)

(关于 checkstyle,pmd , findbugs三者的对比 网上有很多,大家可以自己google一下
但是普遍比较老, 仅供参考,也许现在三者都发生了重大的变化.)

使用findbugs做代码的检查大概用了一年多(现在还在用),效果非常不错.

findbugs 的名字可能会对大家产生误导,其实他不仅仅是寻找bug,其实准确的说, 他是寻找代码缺陷的,很多我们写的不好的地方,可以优化的地方 他也能检查出来. 例如
未关闭的数据库链接,
缺少必要的 null check
多余的 null check ,
多余的if后置条件
相同的条件分支
重复的代码块
错误的使用了"==" ,
建议使用StringBuffer代替 字符串连加
......

甚至连下面的代码他都会给出我们警告:

if ( num % 2 == 1) { /* 那么 num 是奇数 */}

而且会给出详细的错误说明和修改建议: num 为负数时, 此代码无法正确的分辨奇偶数, 建议改成 num % 2 != 0

总之类似的细节提示很多
而且我们还可以自己配置检查规则(做哪些检查,不做哪些检查)
也可以自己来实现独有的校验规则(这个需要继承他的接口,编写自己的校验类,属于高级技巧,很少有人会吧 呵呵).


下面是一篇使用的入门文章< Eclipse插件之FindBugs > 大家还可以 google出更多信息.

http://dev2dev.bea.com.cn/bbsdoc/20060124186.html
评论
cddcdd 2008-01-31

一些错误是根本没有必要修正的。

还有一些关于同步,性能方面的,倒可以关注一下。

用findbugs的话,内存最好2g吧,否则项目一大,1个小时都可能。
qddajian 2007-11-04
第一次听说这个东西,谢谢老大分享.
发表评论

您还没有登录,请登录后发表评论

fins
  • 浏览: 743450 次
  • 性别: Icon_minigender_1
  • 来自: 小胖儿的大城
  • 详细资料
搜索本博客
我的相册
89757367-bcf7-3449-ae1d-31a5a2021dd7-thumb
customHead
共 76 张
其他分类
存档
最新评论