代码之家  ›  专栏  ›  技术社区  ›  Warrior

控制容器的反转

  •  2
  • Warrior  · 技术社区  · 17 年前

    IOC容器应该包含哪些最重要的特性?您可以在中轻松创建容器 15 lines of code ,但它应该包括什么才能在项目中“有用”?

    2 回复  |  直到 17 年前
        1
  •  1
  •   Josh    17 年前

    这是一个非常开放的话题,有很多主观性,但我会尝试从非常务实的角度来回答。考虑到我所从事的项目,以及我在国际奥委会的工作经验,我想说的是,就实用性而言,至少有三个大项目需要寻找。

    1. 配置
    2. 生命周期管理
    3. 自动依赖注入 -好的,依赖注入是IoC构建在其之上的概念,但是您不想自己管理它。这里的想法是,如果您第一次请求IPersonCreator,它应该自动解决它的所有依赖项,以及它们的依赖项等等。

    总的来说,您需要什么取决于项目,但是有几个容器可以很好地满足您的需要。

        2
  •  1
  •   duffymo    17 年前

    按重要性的降序排列:

    1. 至少允许setter和constructor注入,
    2. 将配置与代码分开,
    3. 允许不同样式的配置(XML或注释),