《The Productive Programmer》6

《The Productive Programmer》6

  静态分析  Static analysis

  如果你在使用一种静态类型语言,你就有一种隔离和发现某几类bug的强大手段----这些bug通过代码评审或是别的传统方式很难发现。静态分析(Static Analysis)就是用软件工具对程序代码进行验证的机制,通过它可以找出其中存在的已知的bug模式。

 

  静态分析工具大致分为两类:对编译结果(class文件 或是字节码)进行分析,或对源代码进行分析。

 

  字节码分析:

  字节码分析的目标是在编译后的代码中找出已知的bug模式。首先,人们已经对某些语言进行了足够的研究。以至于能够从编译后的字节码中找到一些常见的bug模式。这个工具不能找出所有的bug。。

 

  字节码分析,能够大概找到以下类型的bug

  正确性  可能是逻辑错误的地方

  不良实践   违反基本编码实践

   迷惑   难懂的代码,奇怪的方法,反常的做法,糟糕的代码

 

源代码分析

  源代码分析,能大概找到以下类型的bug

   可能的bug   空的try catch

    dead code 没有被用到的本地变量、参数和私有变量等。

    欠优化的代码  无节制的字符串操作

    过于复杂的表达式    以复制黏贴的方式来复用代码

   重复代码  

你可能感兴趣的:(《The Productive Programmer》6)