观察者模式

2018-06-13  本文已影响0人  iOS扫地僧

Objective-C编程之道 iOS设计模式解析
iOS设计模式解析-工厂模式
iOS设计模式解析-抽象工厂模式
iOS设计模式解析-外观模式
iOS设计模式解析-中介者模式
iOS设计模式解析-观察者模式
iOS设计模式解析-装饰模式
iOS设计模式解析-责任链模式
iOS设计模式解析-模板方法
iOS设计模式解析-策略模式
iOS设计模式解析-享元模式
iOS设计模式解析-代码地址

何为观察者模式

观察者模式也叫做发布-订阅模式。观察者通过通知器(发行商)把自己注册到(订阅)特定的通知(杂志)。当有通知的时候,观察者只从通知器得到它订阅的通知。

观察者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。

何时使用观察者模式

在以下情形,应该考虑使用观察者模式。

通知

Cocoa Touch框架使用NSNotificationCenterNSNotification对象实现了一对多的发布-订阅模型。它们允许主题与观察者以一种松耦合的方式通信。两者在通信时对另一方无需多少了解。

键-值观察

Cocoa(包括Cocoa Touch)提供了一种称为键-值观察的机制,对象可以通过它得到其他对象特定属性的变更通知。这种机制在模型-视图-控制器模式的场景中尤其重要,因为它让视图对象可以经由控制器层观察模型对象的变更。

注意:我们可以不必从头开始实现整个方案,而是利用Cocoa Touch框架中使用键-值观察(KVO)以及NSNotificationCenterNSNotification对象实现好的观察者模式。

上一篇 下一篇

猜你喜欢

热点阅读