代码之家  ›  专栏  ›  技术社区  ›  Ben Aston

用外行的术语描述.NET程序集循环依赖性问题

  •  2
  • Ben Aston  · 技术社区  · 14 年前

    请用外行的术语描述.NET程序集编译循环依赖性问题,以及其他技术是否有类似的限制。

    注意:这似乎是一个简单的问题,我知道,但我已经看到了一些真正的,重要的项目已经完全打破依赖图。

    3 回复  |  直到 14 年前
        1
  •  2
  •   Tim Robinson    14 年前

    加上卢卡斯的回答:很难想出一个循环 装配 A.dll 你首先需要 B.dll B.dll文件 C.dll ; 但是要编译 C.dll文件 你一开始就想编译。

    唯一可能陷入这种情况的方法是并行开发A、B和C,并且意外地引入了循环依赖。但是一旦你把这三个都做了一个干净的构建,问题就很明显了,除非你打破这个循环,否则你将无法继续。

    Patrick Smacchia(ndependen的家伙)在这里谈了一些依赖循环及其对代码质量的影响: http://codebetter.com/blogs/patricksmacchia/archive/2009/07/29/maintainability-learnability-component-layering.aspx

        2
  •  3
  •   Preet Sangha    14 年前


    考虑三个组件A、B和;C级

    A需要B中定义的东西,B需要C中定义的东西,C需要A中定义的东西。

    你能先造哪一个?

        3
  •  0
  •   Patrick from NDepend team    13 年前

    我是这个工具的开发者之一 NDepend 专门用于强制执行干净代码结构和删除依赖循环的.NET开发人员。在我们的产品网站上你会发现 two white-books 相对于组件依赖循环问题:

    Partitioning code base through .NET assemblies and Visual Studio projects

    • 创建程序集的常见有效和无效原因
    • 提高Visual Studio解决方案编译性能(最高可提高10倍)

    Defining .NET Components with Namespaces (7页)

    • 在.NET程序集中定义组件
    • 无圈图 组件之间的依赖关系
    • 进化设计和 非循环组件化