您的位置:首页 > 编程语言

静态代码扫描学习

2014-10-28 23:50 169 查看
静态代码分析,指的是不运行程序,通过词法分析、语法分析等方法发现代码中潜在的缺陷。

相对而言,动态分析指的是运行程序去发现问题,如功能测试等

执行静态代码分析的时机是什么时候呢?从faux pas这个object-c代码分析工具的执行log来看,静态分析是在编译后进行的。

一般的代码分析工具执行顺序也是:编译————静态分析,也要基于编译,静态分析才能进行。当然也有抛开编译,纯文本检查的分析工具。

为啥要在编译之后进行静态分析呢?是借助编译产生的中间文件?我也没有找到答案。

那么编译和静态分析一块进行是否ok?可以的。但为了能更快地编译出可执行程序,通常将静态分析剥离开。

常用的静态分析工具有:

PC-Lint:c/c++,   windows平台

PMD:java/object-c,   windows/mac os 平台

lex:c,    unix平台

faux pas:object-c , mac os平台

clang:
object-c    , mac  os平台

参考:
http://www.cnblogs.com/bangerlee/archive/2011/09/07/2166593.html http://files.cnblogs.com/bangerlee/10.1.1.56.1841.pdf
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息