我发现自己是一个视觉的人,如果我可以从中绘制图表/图片,有时候学习更容易。我的问题是,如果我想直观地映射编程框架(例如.net)并查看所有实体(例如类和成员)之间的关系,我会使用哪个工具。
答案 0 :(得分:3)
您可以尝试NDepend。伟大的Scott Hanselman discusses it more here.吨视觉依赖格式也是如此。听起来它只适用于.NET。
答案 1 :(得分:1)
我发现doxygen对于在面对新项目时生成各种依赖关系信息非常有用。它显然处理“ C ++,C,Java,Objective-C,Python,IDL(Corba和Microsoft风格),Fortran,VHDL,PHP,C#,以及某种程度上D ”。它使用Graphviz生成图形依赖关系图表。您可以包含完整的源代码,以及来自已识别的所有内容的超链接。如果你很幸运,那里会有一些doxygen能够理解的文档。然后,您可以快速浏览代码,了解所有关系。
答案 2 :(得分:1)
工具NDepend建议使用交互式Dependency Graph和交互式Dependency Matrix。此外,该工具已集成在VisualStudio 2012,2010和2008中。免责声明:我是该工具的开发人员之一
无论您是需要展示Call Graph,Coupling Graph,Inheritance Graph,Dependency Graph,very large Graph,精确定位Dependency Cycles等,NDepend都会生成一些视觉图表。以下是一些截图:
答案 3 :(得分:0)
一个不错的第一步可能是编写一个简单的PERL脚本来解析依赖关系,然后将这些数据传输到Graphviz以进行可视化。
答案 4 :(得分:0)
我不确定你是否只询问.NET或其他框架,我的经验主要是Java,但我确信.NET存在类似的工具。
在类的级别上,您可以使用UML工具获得自动生成的可视化,这些工具通常可以将源代码反向工程为图表。 Netbeans是免费的,并且具有Java source to UML reverse engineering个功能。
然而,类图表的级别非常低,它们很少(直接)告诉您较大的架构主题。此时,像Structure101这样的工具在发现您没有意识到的建筑属性方面非常有价值。他们有试用版,也可以处理C和C ++。答案 5 :(得分:0)
我是尼克的Doxygen评论。我正在使用Doxygen for C#.NET,它会生成类图,继承图等。这是一个informative blog post。