【发布时间】:2018-12-05 16:44:34
【问题描述】:
我创建了一个 PHP 包,在其中应用了 solid 原则,这很棒,但是我最终将许多单独的依赖项注入到主类或模块中,然后将它们使用。
示例:
$dataViewer = new DataViewer;
$dataProvider = new DataProvider;
$dataParser = new DataParser;
$dataSaver = new DataSaver;
... 然后在我的主模块或类中使用所有这些依赖项,如下所示:
$myPackage = new MyPackage($dataViewer, $dataProvider, $dataParser, $dataSaver);
然后我使用我的包。
对于那些使用这个包并且只需要获取 MyPackage 的实例而不是注入所有这些依赖项的人来说,有没有办法让这变得更容易一些。
【问题讨论】:
-
您需要创建自己的配置和自动布线系统。例如,看看 Symfony 是如何做到的。事实上,这个问题还不错,但是对于 Stack Overflow 的要求来说太宽泛了。
-
例如阅读this。
标签: php oop dependency-injection