我在程序开始时需要设置以下依赖项:
//Set up dependencies
$fileSettings = array(12, 'extra_lines', 'close_on_save');
$exporter = new Exporter('exporterpath/filename.txt', $fileSettings);
$outputStream = new OutputStream();
$businessModel = new BusinessModel('param1', 'param2');
//Run application
$application = new Application($exporter, $outputStream, $businessModel);
$application->start();
所以在这里你可以看到,我的主应用程序有一些依赖项,这是引导程序所需的代码,以便注入所需的一切。
这是否保证了依赖注入容器?
如果不是,工厂化的方法会更合适吗?
这是一篇很好的依赖注入文章(甚至是PHP!)。
http://fabien.potencier.org/article/12/do-you-need-a-dependency-injection-container
来自文章:
大多数情况下,您不需要依赖注入容器依赖注入带来的好处。
但是当你需要用大量的依赖项,依赖项注入容器可能非常有用(例如,想想一个框架)。
我相信正确的答案与你的场景有多复杂有关。在某个时刻,某个地方,必须知道如何将所有这些结合在一起。如果它变得乏味和丑陋,那么可能是时候建造一个容器了。
实际上,您从来没有拥有容器。这通常是一个好主意,因为它提供了灵活性。