【问题标题】:Editable assembly dependency graph generation可编辑的程序集依赖图生成
【发布时间】:2012-09-04 19:37:43
【问题描述】:

有没有人知道自动生成可编辑程序集依赖图(例如 Visio 图)的工具或任何解决方案(最好是免费的)?

我在网上找到了类似的线程,但推荐的几个工具(.Net Reflector Graph add-in、Dependency Visualizer、GraphViz 等)只生成图像文件(PNG、JPG、SVG 等)。

我需要进行逆向工程的解决方案由超过 75 个项目和数百个 dll 组成。即使是子系统图也是难以理解的,所以我们想调整/编辑它们,找到常见的重复将它们隔离成单独的图,等等。我们需要一些可以为我们完成大部分无脑部分的东西,但这允许我们接管在那里。

顺便说一句,我确实找到了生成相应矩阵表示的工具,这很棒,但我们仍然需要更直接地了解图形的深度。

提前致谢。

泰国

【问题讨论】:

    标签: graph dependencies libraries dll


    【解决方案1】:

    Dependency Analyser tool 在我的情况下很有用。它也适用于 .Net 程序集。

    【讨论】:

    • 这看起来很有希望,但是由于加载了“无效的程序集格式”,它似乎很容易中断(即使在为当前目标框架重新编译后,它也不会阻塞 .NET 4.0 程序集)。
    • 无效的程序集格式消息是因为 64 位应用程序使用了 32 位程序集
    • 尽管这不会生成可在建模工具(例如 Visio、Enterprise Architect)中调整的格式的可编辑图形,但它是免费的,并且提供了将子系统和组件分离到不同的图像。在将近 4 年后没有满足所有要求的答案,我将其标记为答案。谢谢大家!
    【解决方案2】:

    NDepend 带有一个交互式和可编辑的dependency graph 以及一个依赖矩阵。默认情况下,您将获得 .NET 程序集的依赖关系图,它不仅限于一个 VS 解决方案的程序集。 NDepend 集成在 VS 2010、2008 和 2005 中,它可以在您的代码上显示任何类型的图形,包括:

    • 程序集之间的依赖关系
    • 方法调用图,
    • VS 项目中命名空间的依赖关系,
    • 命名空间内类型的依赖关系,
    • 类继承图,
    • 表示 2 个组件之间的类耦合的图表

    等等……

    查看从这篇博文中提取的屏幕截图: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

    【讨论】:

    • 谢谢,这确实有帮助,但由于这是一个专有工具,我会再等一会儿看看是否有人有免费的替代品,否则我会将其设置为正确答案。
    猜你喜欢
    • 1970-01-01
    • 2010-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    • 1970-01-01
    • 2016-07-27
    相关资源
    最近更新 更多