加载中...

| 类别 | 设计模式 |
| 英文名 | Observer Pattern |
| 类型 | 行为型模式 |
| 领域 | 软件设计 |
观察者模式(Observer Pattern)是一种行为型模式,它定义了对象之间一对多的依赖关系,当一个对象(主题)的状态发生改变时,所有依赖它的对象(观察者)都会自动收到通知并更新。
在保持主题与观察者松耦合的前提下,实现状态变化的自动广播,又称发布-订阅模式。
包含抽象主题(Subject,维护观察者列表并提供注册、注销与通知方法)、具体主题、抽象观察者(Observer,定义更新接口)和具体观察者。当主题状态变更时,遍历列表逐一调用观察者的更新方法。
优点:实现了主题与观察者的松耦合,支持广播通信,符合开闭原则。缺点:观察者过多时通知开销大;若存在循环依赖可能导致系统崩溃;观察者无法知晓其他观察者的存在。

| 类别 | 设计模式 |
| 英文名 | Observer Pattern |
| 类型 | 行为型模式 |
| 领域 | 软件设计 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧