设计模式-观察者模式

1、观察者模式的定义

当一个对象的状态发生改变时,所有依赖于它的订阅者都会收到通知

2、观察者模式应用场景

场景一:关联行为场景
场景二:事件多级触发场景
场景三:跨系统消息交互场景(例如:消息队列、事件总线等)

3、观察者模式的角色划分

角色一:被观察者(目标对象)
角色二:具体被观察者
角色三:观察者(抽象)
角色四:具体观察者
例如:
播放器案例的NotificationCenter的角色划分
被观察者:抽象->NSObject
具体观察者:AVPlayerItem
观察者:抽象->NSObject
具体观察者:DefaultAVPlayer

4、观察者模式的原理案例

微信公众号:企业号、个人号、订阅号、小程序号
被观察者:抽象->客户端->StudentObservable(学生类)
具体被观察者:安卓客户端、ios客户端->NSLogStudent、NSErrorStudent、EdWordStudent
观察者:抽象->Observer
具体观察者:NewsObserver->新闻观察者

具体的demo地址:

你可能感兴趣的:(设计模式-观察者模式)