使用 IBM 静态工具优化 Java 代码,第 1 部分: 工具入门
2010-01-11 00:00:00 来源:WEB开发网什么是 BEAM?
关于缩写 BEAM 的声明
处于表达简洁的目的,本文采用了工具名称的缩写 — BEAM,这只是工具全称“Checking Tool for Bugs Errors and Mistakes”的文字缩写,而不是工具的名称。
IBM Checking Tool for Bugs Errors and Mistakes(本文后面将采用其文字缩写 BEAM)是 IBM 开发的一个静态分析工具,可以用于分析并查找出 C, C++ 和 Java 代码中的一些不容易发现的潜在错误,从而达到提高代码质量的目的。同动态分析工具和其它静态分析工具相比,它拥有一些可贵的特性。
同动态分析工具的比较
首先,BEAM 可以直接对代码进行分析,不需要运行代码,也不需要对代码编译链接,所以相对容易。比如,运行它不需要为代码编写任何测试用例,而动态分析仅在单元测试时就需要大量测试用例,而且这些测试用例只能测试单个代码片段,重用性很低,基本上每个类都需要不同的测试用例,因此只有编写足够多的单元测试用例才能测试大型的软件产品,耗时且代价高昂。
其次,这个工具可以查找出单元测试和专业代码审查所可能错过的代码缺陷和安全弱点,比如内存泄漏,非法的数据库访问和非法内存访问等等,据统计,BEAM 可以在平均每 1000 行已经经过测试的代码中找出一个错误。
再次,在开发早期就可以运行其对代码进行检查,从而在产品开发早期发现缺陷,有助于降低开发成本。同时,它还有助于开发人员在产品开发早期发现自己编码风格的缺点,及早做出改进,防止工程后期重复发生相同类型的错误。
同其它静态分析工具的比较
同其它静态分析工具一样,BEAM 也是对代码进行语法扫描,通过算法对代码进行检查分析,并和一些 bug 模式进行比较,最终标明问题区域,输出分析结果。但是相对于其他静态分析工具,它有一些独到的优点。
- ››使用脚本恢复WinXP系统的用户登录密码
- ››使用phpMyadmin创建数据库及独立数据库帐号
- ››使用Zend Framework框架中的Zend_Mail模块发送邮件...
- ››使用cout标准输出如何控制小数点后位数
- ››使用nofollow标签做SEO的技巧
- ››使用 WebSphere Message Broker 的 WebSphere Tra...
- ››使用SQL Server事件探查器做应用程序的性能分析
- ››使用SQL Server事件探查器分析死锁原因
- ››使用纯文本文件打造WCF服务
- ››使用 Dojo 开发定制 Business Space 小部件,第 4...
- ››使用 ADDRESS 与 INDIRECT函数查询信息
- ››使用 COLUMN函数编制单元信息
赞助商链接