代码之家  ›  专栏  ›  技术社区  ›  James L

国际奥委会在大型项目中的最佳实践

  •  7
  • James L  · 技术社区  · 16 年前

    对于使用控制容器反转来管理大型项目的依赖性,您发现了哪些有用的技术?

    你是在一个地方引导所有的东西,还是把它们分开?

    你曾经用过多个容器吗?

    1 回复  |  直到 16 年前
        1
  •  8
  •   Community Mohan Dere    9 年前

    从体系结构的角度来看,保持对 Composition Root 是。它应该尽可能靠近应用程序的入口点,并且您应该 在单个位置组合整个依赖关系图。

    否则,可能会造成责任方面的混淆,并且您也可能会引入各种细微的错误,因为在一个地方解析的ifoo实例可能与在另一个地方解析的ifoo实例相同,也可能不同。

    如果应用程序太大,一次解决整个依赖关系图的开销太高,那么可以使用 lazy loading lifetimes 在战略位置(周围 Aggregate Services )

    从概念上讲,我一直只有 单个容器 . (我偶尔会使用多个父/子容器来打破一些循环依赖关系,但这是一个实现细节。)