如果我想直观地映射编程框架并查看所有实体之间的关系,我应该使用哪个工具?
我发现自己是一个视觉的人,有时如果我能从中画出图表/图片,学习更容易。我的问题是,如果我想以可视方式映射编程框架(例如.net)并查看所有实体(如类和成员)之间的关系,我应该使用哪种工具。如果我想直观地映射编程框架并查看所有实体之间的关系,我应该使用哪个工具?
我不确定如果你只是询问.NET或其他框架,我的经验主要是用Java,但我相信.NET存在类似的工具。
在类的级别上,您可以使用UML工具获得自动生成的可视化效果,这些工具通常可以将源代码逆向工程化为图。 Netbeans是免费的,并有Java source to UML reverse engineering功能。
但是,类图很低,他们几乎不直接告诉你更大的建筑主题。在这一点上,像Structure101这样的工具可以发现您没有意识到的架构属性。他们有一个试用版,也可以处理C和C++。
我觉得doxygen对于面对新项目时生成各种依赖信息很有用。它明显处理“C++,C,Java,Objective-C,Python,IDL(Corba和Microsoft风格),Fortran,VHDL,PHP,C#以及某种程度上的”“。它使用Graphviz来生成图形依赖关系图。您可以包含完整的源代码,以及所有已识别的超链接。如果你幸运的话,会有一些doxygen已经知道的文档。然后,您可以快速浏览代码,了解所有关系。
工具NDepend提出了交互式Dependency Graph和交互式Dependency Matrix。此外,该工具集成在VisualStudio的2012年,2010年和2008年免责声明:我的工具的开发者之一
无论您是需要表现出Call Graph,Coupling Graph,Inheritance Graph,Dependency Graph,very large Graph,查明Dependency Cycles多,NDepend会生成一些视觉图。下面是一些截图: