设计模式-观察者模式

1、观察者模式的定义

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

2、观察者模式应用场景

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

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

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

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

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

具体的demo地址:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。