c - 有哪些工具可以建议潜在的重构

标签 c refactoring

<分区>

我不需要用于实际执行重构的工具,而是用于查找和建议潜在重构的工具。特别是用于识别相似代码块并可以合并到实用函数中的工具。

这里的背景是我被要求调查减少嵌入式 C 系统的代码大小。这个任务似乎主要分解为删除不需要的代码(死代码)和合并重复的代码。各种类似 lint 的工具会找到死代码。但我仍然需要找到重复代码的方法。

最佳答案

我建议看一下 PMD's Copy Paste Detector .虽然它默认为 Java 代码,但它也支持 c++、php 和 ruby​​。

PMD 在词法基础上执行此操作,并且有几个选项可以忽略代码中的常量。更好的代码重复检测器构建 AST,并比较相似的树。 AST 方法更好,因为格式和变量名不会影响结果。

关于c - 有哪些工具可以建议潜在的重构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2053319/

相关文章:

c - 从串口读取和写入,通过linux中的c中的环回

c++ - 标准数学函数能否正确处理无穷大?

c - 找到一条到达叶子的路径等于sum(不是BST)

c - 如何在 Visual Studio 中使用优化器和分析器

java - 根据状态更改记录器级别

asp.net - 使用 .Net 2.0 向导控件设计模块化 Web 向导

language-agnostic - 什么时候重构代码?

c - 如何获取结构中的成员数?

javascript - 呈现新内容时的 Ajax 设计/重构帮助 - 如列表项和 div

python - pygame类结构