C#逆向工程有很好的工具吗?

如果有很好的工具来反向工程我的C#应用​​程序,你能说我吗? 我需要我编写的软件的UML类图表,我不想自己绘制这些图表。 我已经测试了StarUML,但它没有用,因为我使用了generics。

如果有一些建议会很棒。

问候,马丁

你检查过.NETreflection器吗? 还有一个图表插件..

加载项列表

巧合的是,一位同事与一些MS人员就Visual Studio 2010团队基础服务器进行了会面。 他们告诉他,它能够对assembly进行逆向工程并生成UML图。 快速查看MSDN( 链接文本 )似乎可以部分证实这一点。 它没有说UML,但它确认了可以派生架构图,并且可以在编译时validation您的代码。 但它显然还没有,我敢肯定它会带来沉重的代价。

Altova UModel

Sparx企业架构师非常好。 我在工作中使用它。

ILSpy看起来很像Reflector。
http://wiki.sharpdevelop.net/ILSpy.ashx
我已经多次使用它,它非常方便。

还有dotPeek(Resharper的创造者)
http://www.jetbrains.com/decompiler/index.html?topDP

他们都是免费的:D

NDepend工具肯定是您正在寻找的C#代码逆向工程 。 NDepend带有一个与依赖矩阵相结合的依赖图 。 您可以通过免费试用版直接尝试NDepend代码。 由于图片胜过千言万语,请参阅从此博客文章中提取的NDepend的屏幕截图: Interactive Code Dependencies Graph

alt text http://codebetter.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/patricksmacchia.Graph/InternalDependenciesGraphSmall2.jpg

替代文字

alt text http://codebetter.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/patricksmacchia.Graph/CycleGraphSmall2.jpg

alt text http://codebetter.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/patricksmacchia.CQLExport/Graph1.jpg

Visual Studio 2010 Ultimate支持UML类图以及序列,组件,用例和活动图。 它还支持从代码创建序列,依赖图和层图。 关于从代码生成UML图的问题,VS架构和建模工具论坛中有一个响应: 是否可以将C#代码反向工程为UML类图?

其他工具包括Architecture Explorer,可让您浏览和探索解决方案。

有关详细信息,请参阅以下链接:

要下载RC版本,请访问: Microsoft Visual Studio 2010 Ultimate RC

要查看RC文档,请参阅对应用程序建模 。

要讨论这些工具,请访问Visual Studio 2010体系结构发现和建模工具论坛。