小编KiX*_*lan的帖子

如何实现依赖注入容器和依赖注入

我想知道如何使用 php 实现依赖注入容器(供研究)。我得到了依赖注入的概念,我可以实现它,但我只能分解到 php 框架的控制器。

这意味着整个实例化、注入等都发生在控制器中。喜欢

       class SampleController{

       public function action1(){
            $sample_object = new ObjectToInject();
            $dependent_object = new DependentObject($sample_object);
            $dependent_object->doSomething();
            ...
            etc
       }


      }
Run Code Online (Sandbox Code Playgroud)

现在我要说的是,如果逻辑变得更加复杂,控制器就会变得臃肿。我知道我的控制器变得臃肿,这是否意味着它仍然不太可维护?

问题:

  1. 我的假设是否正确,即控制器现在拥有所有逻辑?
  2. 那么依赖注入容器有什么用呢?这和他在这篇文章中作为 bootstrapper 所说的一样吗?
  3. 请解释一下 Symfony2 依赖注入容器的作用。
  4. 请给我一个使用 php 依赖注入容器的具体例子。
  5. 我是否正确,在单元测试中,只需要测试依赖类,而不需要测试独立类。

如果我的问题含糊不清,请纠正我。谢谢

php design-patterns dependency-injection

2
推荐指数
1
解决办法
563
查看次数