依赖注入的边界在哪里

时间:2016-07-04 17:11:43

标签: php dependency-injection

注入是将依赖项传递给将使用它的依赖对象(客户端)。 (维基)

我知道这是依赖注入:

private $exampleClass;
private $name;

public function __construct ($name, ExampleClass $exampleClass)
{
    $this->name = $name;
    $this->exampleClass = $exampleClass;
}

但是这还是DI吗?

private $exampleClass;
private $name;

public function __construct ($name, ExampleClass $exampleClass = null)
{
    $this->name = $name;
    $this->exampleClass = $exampleClass ?: new ExampleClass($name);
}

感谢

1 个答案:

答案 0 :(得分:0)

A需要B 时依赖注入,应用程序会创建A并将其提供给B。相反,在您的示例中,会创建ExampleClass。因此,它不是dependency injection