写代码分析作品的特点和优点与不足

写代码分析作品的特点和优点与不足


2024年4月15日发(作者:)

写代码分析作品的特点和优点与不足

静态代码分析还有如下优点:

1、全代码覆盖。静态分析器甚至会检查那些很少获得控制的代

码片段。在使用其他方法时,这些代码片段往往不会被纳入测试范围。

使用这种方法,你就可以找到例外处理程序或登录系统中的瑕疵。

2、静态分析无需依赖你正在使用的编译器和被编译程序的执行

环境。这使你可以察觉到某些可能经过数年时间才能表现出来的隐藏

错误,比如那些未定义的行为错误。当转换到其他编译器版本或使用

其他代码优化开关时,此类错误才会表现出来。

3、你可以轻易快速地检查出输入错误和复制-粘贴的使用情况。

通过其他方法来检查这些错误往往会浪费过多的时间和精力。如果你

花了1个小时的时间来调试,发现的只是表达为“strcmp(A, A)”的

错误,那着实令人深感惋惜。人们在讨论典型错误时往往会遗忘此类

问题。但是实践表明,检查这样的错误需要耗费大量的时间。

静态代码分析的劣势

1、静态分析对内存泄露和并发错误的诊断较差。要检查此类错

误,你需要虚拟化执行部分程序。执行是件很困难的事情。此类算法

需要耗费过多的内存和处理器时间。静态分析往往在诊断简单案例时

会进行自我限制。使用动态分析工具来检查内存泄露和并发错误会更

加有效。

2、静态分析工具会警告你碎片的存在。事实上,代码是正确的。

这种现象称为误报。只有程序员才能理解分析器报告的是真正的错误

还是误报。审查误报是必要的,这需要耗费一定的时间和精力,而且

会影响解决那些真正存在错误的代码片段的注意力。

静态分析器检查出的错误是多种多样的。有些分析器专注于某个

区域或某种类型的瑕疵,有些支持某些编程标准,比如MISRA-C:1998、

MISRA-C:2004、Sutter-Alexandrescu Rules和Meyers-Klaus Rules

等。

静态分析领域正在繁荣发展,新的诊断规则和标准不断产生,同

时某些规则被废除。这也正是为何以所检查瑕疵为标准来比较分析器

毫无意义的原因所在。比较工具的唯一方法是将其运用到真正的项目

中,计算它们找出的真实错误数量。


发布者:admin,转转请注明出处:http://www.yc00.com/news/1713119319a2186762.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信