Rap*_*itz 5 circular-dependency
如果您搜索如何解决循环依赖关系,答案几乎总是“使用接口”。我知道如何使用这种技术来使循环依赖起作用,但我不明白这是如何解决循环依赖的。
假设我有 2 个类 View 和 Presenter,它们相互引用。现在我应用“解决方案”并创建接口 IView 和 IPresenter。View不再引用Presenter,而是引用IPresenter;Presenter引用IView而不是View。
圆圈变大了,但它仍然存在。View 和 Presenter 仍然相互依赖,只是不是直接依赖。然而,我看到的每一个答案都绝对肯定循环依赖现在已经解决了。我在这里有什么误解?
这些循环依赖尚未得到解决。
这些情况下的标准答案是在构造后分配依赖关系。这解决了这些循环依赖项产生的问题,但没有解决循环依赖项本身。
这可能主要是一个语言问题,人们只是说“我解决了 X 和 Y 之间的循环依赖”,而不是“我解决了由于 X 和 Y 之间的循环依赖而遇到的问题”。
| 归档时间: |
|
| 查看次数: |
3460 次 |
| 最近记录: |