我对循环依赖有一些疑问。
我想为PHP框架开发一个模块。我有一个类用于连接框架和这个实例的几个对象。例如,A和B有更多。
我想从其他类访问对象函数和参数,但什么是最好的设计?
class Main {
$a;
$b;
public function __constructor() {
$this->a = new A($this);
$this->b = new B($this);
}
public function getA() {
return $this->a;
}
}
class A {
$main;
public function __constructor(Main $main) {
$this->main = $main;
}
public function functionA() {}
}
class B {
$main;
public function __constructor(Main $main) {
$this->main = $main;
}
public function functionB() {
$this->main->getA()->functionA();
}
}
我知道我有循环依赖。它不会长得太多,因为只有一次实例这些对象,但我想以正确的方式制作。
我有其他选择:
我认为最后一个选项是首选,但我想要一个简单的Main类来接收模块的请求。
我的结构有任何设计模式吗?有什么建议吗?
感谢。