2010-01-06 160 views
3

Visio 2010 Beta可以从Native C++项目生成静态UML图,这很好。如何解决逆向问题:从Visio给定静态UML图,生成头文件?从Visio UML创建C++代码图

或者,也许有免费的架构开发和逆向工程工具?

编辑 一般来说,我不需要图是严格的UML。他们应该清楚地看到他们,并在设计应用,实施和支持过程中了解课程。但它必须具有反向工程和生成代码的功能。

我会尝试在几天内使用提供的替代方法,然后写一点比较。

  1. 的ArgoUML 我试图导入我现有的代码和失败。原因是C++支持是pre-alpha。该语言的许多结构尚不支持。从而导入所示的MessageBox:

C++的逆向工程模块是 阿尔法前阶段。其已知的限制是:

* very few C++ constructs are supported, e.g., enums, unions, templates, etc, aren't; 
* no support for non-member variables and functions; 
* no integration with the C++ generator => RTE won't work!; 
* no operator overload support; 
* very immature, certainly this list needs to grow! 

回答

3
  1. 造就图在Visio
  2. 造就Visual Studio中,打开C++项目。
  3. 代码开始输入:)

严重,维索是一个可视化工具,并表示它在一个表单数据最适合渲染。这缺乏构建代码模型所需的信息,除非它使用一些复杂的视觉和边缘检测算法。

所以,我不认为会有任何这样的工具。

+1

对我来说,似乎应该有这样的工具,因为它非常方便。而且微软有VS来开发Visio来展示图表(并且Visio在VS中有一个工具箱,可以将代码反向工程到UML)。如果我是微软,我创建了一些工具(或Visio/VS的功能)来生成图表。现在我只知道可以做这种事情的Sysbase Powerdesigner(代码<--> UML)。而Visio可以使用数据库图表。但对于C++ ... :(( – flashnik 2010-01-06 20:29:43

+0

+1 flashnik感谢您的反馈意见,我很惊讶visio可以用数据库图表来做到这一点)。 – 2010-01-07 13:25:27

+0

我发现有企业架构师的Visio 2003,它随Team Suite VS发货。它可以从UML图生成C++和.Net代码。所以这个问题可能不在Visio中,而在现代版的studio中。也许让我们为Visio 2010和VS 2010创建一个功能请求,同时它们都处于测试阶段? – flashnik 2010-01-08 20:57:37

4

StarUML是一个免费的(和更好的)替代代码生成的可能性。
大多数付费的UML工具也会生成代码。

3

ArgoUML是一个很好的免费工具,可以生成UML类图,然后从图生成源代码。 ArgoUML可以用多种语言输出代码,包括C++。

你可以找到它:从Sparx Systems的 http://argouml.tigris.org

+0

底格里斯..我爱底格里斯产品:) 谢谢,我会尝试它,然后再次回复。 – flashnik 2010-01-06 21:01:50

+0

我也很喜欢“设计评论家”,他们批评你写的UML,从而帮助你写出更好的UML。 :) – 2010-01-06 21:13:11

+0

不,这对C++不好。我试图导入项目,它失败了...... 希望,他们会开发它并修复问题。现在是非常早期的产品 – flashnik 2010-01-06 22:36:56

1

企业架构师为我运作良好。