例子:依赖注入解决循环依赖
class MyClass
{
Composition m_Composition;
void MyClass()
{
m_Composition = new Composition(this);
}
}
我很感兴趣,这里使用depenency注射。因此,我将不得不构造重构的东西,如:
void MyClass(Composition composition)
{
m_Composition = composition;
}
但是我现在得到一个问题,因为Composition
-object依靠其刚刚创建MyClass
类型的对象。
依赖项容器可以解决这个问题吗?它应该这样做吗?
还是从一开始就只是糟糕的设计?
感谢您的回答。我会试着找出在我的情况下是否可以避免循环引用,虽然我不确定,但是:我需要引用来订阅Composition的构造函数中的MyClass的一些事件...感谢您提及您的书,它听起来很有趣。我期待着阅读它。 – tanascius 2010-04-14 11:16:39
要清楚:尽管您已经可以购买该书的早期访问权限,但关于处理循环引用的部分尚不可用。 – 2010-04-14 11:54:18