【发布时间】:2010-12-13 05:29:03
【问题描述】:
我的情况是,我至少需要努力从源代码中删除从未使用过的代码。一般偏好是使用静态代码分析工具。我们在其他项目中对此非常幸运,但我听到的大多数人都是从事设备级代码的 C/C++ 开发人员。
我是一名在Java EE 系统上工作的网络开发人员。最受欢迎的分析工具是 Coverity Prevent,尽管如果我能提出强有力的理由证明它更适合我们正在开发的技术,我可能会提倡其他东西。
我发现自己很怀疑——当您针对具有大量抽象的系统运行时,静态代码分析对死代码的有效性如何?比如我们使用Spring的依赖注入,还有JSF。在这两种情况下,都没有简单的方法来跟踪从前端到后端的函数调用,并完整地了解哪些被调用,哪些未被调用。
我非常担心死代码检查的误报会超过运行该工具的价值。
在这种情况下有什么经验?当您的架构使用大量抽象时,您是否设法从静态代码分析工具中获得价值?您是否需要做些什么才能让它以最少的误报工作?
【问题讨论】:
-
这似乎更像是一个社区 wiki 类型的问题。
标签: spring jsf static-analysis abstraction coverity-prevent