设计模式 - 观察者模式

定义

Define a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automatically.

UML

实例

更新控件,委托,

  1. 一个对象状态的改变需要改变其他对象,或者实际对象是事先未知的或动态变化的。
  2. 一些对象必须观察其他对象。

比较

观察者模式、职责链模式、命令模式、中介者模式 用于处理请求发送者和接收者之间的不同连接方式。

比较 观察者模式 备注
职责链模式 观察者允许接收者动态地订阅或取消接收者请求 职责链按顺序将请求动态传递给一系列潜在接收者,直至一名接收者处理请求。
命令模式 命令在发送者和请求者之间建立单向连接
中介者模式 观察者在对象之间建立动态的单向连接,部分对象可作为其他对象的附属发挥作用。 中介者消除了发送者和请求者之间的之间连接,强制通过一个中介对象进行间接沟通
中介者是消除一系列系统组件间的相互依赖,这些组件将依赖于同一个中介者对象。
posted @ 2022-04-21 23:54  wesson2019  阅读(17)  评论(0编辑  收藏  举报