【发布时间】:2014-03-15 18:46:38
【问题描述】:
如何最好地解耦两个类,但仍然让它们相互依赖?
我有带有类型提示的构造函数参数:
public function __construct(\namespace\Interface1 $class1,
\namespace\Interface2 $class2,
\other\namespace\Abstract1 $class3){
但是这是否像以下那样紧密耦合:
new \namespace\Class1();
欢迎任何其他方法。
【问题讨论】:
-
我不确定我是否理解这个问题。您能否通过回答这些问题来澄清一下:您认为哪两个类是紧密耦合的?其中哪一个取决于另一个?
-
@ShaunakKashyap 对不起。具有构造方法的类将依赖于 Class1。
-
你可以省略命名空间,它们在这里似乎没有什么区别,只是增加了混乱。
-
@Jack 谢谢。但是我在自动加载时使用命名空间作为文件夹
标签: php oop dependency-injection type-hinting