Observer模式如何减少耦合?

时间:2016-04-26 14:47:18

标签: design-patterns observer-pattern

我理解Observer模式是如何工作的,但是为什么Observer模式减少了软件设计中UI和业务逻辑组件之间的耦合?

1 个答案:

答案 0 :(得分:4)

The Observer pattern减少了参与者之间的耦合,因为它在Subject和Observers之间引入了一个抽象类型Observer。

想象一个模型(四人帮中的主题/维基百科描述,以及业务逻辑的主页)和一个视图(一个观察者)。如果没有Observer,模型需要在View发生变化时调用方法。模型将知道View的具体类并与之相关,以及View所属的任何UI特定框架。

使用Observer,Model只知道Observer的类型(抽象类或接口),因此它不会与具体的View耦合。