从C ++代码生成UML?

时间:2009-01-02 03:27:45

标签: c++ uml

是否有一个工具可以解析项目中的C ++文件并从中生成UML?

10 个答案:

答案 0 :(得分:66)

以下是一些选项:

使用Microsoft Visio 2000将工程代码反转为UML图的循序渐进指南 - http://msdn.microsoft.com/en-us/library/aa140255(office.10).aspx

BoUML - http://bouml.fr/features.html

StarUML - http://staruml.sourceforge.net/en/

在存在弱类型容器的情况下从C ++代码逆向工程UML类图(2001) - http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064

Umbrello UML建模器 - http://uml.sourceforge.net/

要查看的其他工具列表 - http://plg.uwaterloo.ca/~migod/uml.html

答案 1 :(得分:45)

如果它只是你想要的图表,doxygen做得很好。

答案 2 :(得分:15)

我相信Enterprise Architect可以做到这一点。

答案 3 :(得分:14)

我开发了一个名为Doxygraph的工具,它可以解析Doxygen生成的XML并将其转换为交互式UML类图,您可以在Web浏览器中查看或导入任何可以读取Graphviz的软件“点“文件。

答案 4 :(得分:7)

我发现维基百科可以成为有关此类工具的重要信息来源,特别是对于比较表。 UML tools上有一个页面。请参阅reverse engineered languages列。

答案 5 :(得分:5)

UML Studio根据我的经验做得很好,并且将以小型项目的“免费软件模式”运行。

答案 6 :(得分:2)

谁想要UML值得Rational Rose:)

答案 7 :(得分:2)

我使用Rational Rose和Rational Rhapsody来进行大型项目的逆向工程。我更喜欢Rational Rhapsody来获取C ++的UML类文件!

答案 8 :(得分:2)

似乎 Umbrello 从C ++代码生成最佳UML(建议使用最新版本> = 2.22),与命令行 autodia 相比, Dia 和其他工具。

StarUML 没有为我制作好的图表:奇怪的导入,不可用,对许多人不起作用:https://github.com/staruml/Cpp/issues

答案 9 :(得分:1)

StarUML就是这样,它是免费的。不幸的是,它暂时没有更新。有几个分支项目(因为项目管理员不允许它被接管)但他们也死了。