<分区>
我已经尝试过 Umbrello 和 ArgoUML;并且两者都无法从现有的 C++ 代码库生成代码。尽管他们在这些领域的能力有限,但他们都无法成功导入带有 std、boost、SDL 和本地包含的文件。 FOSS 世界中是否有任何东西可以模拟相当复杂的 C++ 代码。 UML 部分是可选的,重要的是生成一致且准确的代码可视化。
注意:gprof2dot 和 doxygen 等工具可以处理源代码,但它们的输出非常复杂,与原始代码一样难以掌握。
注意 2:既然不能再问关于 SO 的工具,让我改写一下这个问题:
在给定一个庞大、陈旧、复杂且笨拙的 C++ 代码库的情况下,如何快速有效地执行主要重构。我所说的专业是指:
- 从现有的源/ header 对中提取整个结构/枚举/类到它们自己的文件中
- 添加/删除命名空间
- 改变函数签名
- 等等
有些事情可以用 grep 和 sed 来解决;但是,发现和管理包含依赖项可能会让人不知所措。我目前坚持使用“更改并修复”方法——尝试重构某些内容并迭代构建并修复编译器指出的错误。对于广泛使用的对象,这是慢。什么是正确的方法?