设计模式学习-每日一记(14.观察者模式)
观察者模式
A.定义:
定义对象间一种一对多的依赖关系,当对象变化时,其他对象能够得到通知,并自动更新。
B.定义分析:
"定义对象间一种一对多的依赖关系,当对象变化时,其他对象能够得到通知,并自动更新。"多个对象关注一个对象的状态,比如一个数据来源。
"定义对象间一种一对多的依赖关系,当对象变化时,其他对象能够得到通知,并自动更新。"被关注的对象变化时,有种办法能通知其他关注对象。
"定义对象间一种一对多的依赖关系,当对象变化时,其他对象能够得到通知,并自动更新。"通知关注对象的时候,实际上可行的一个方法是调用一个定义好的更新接口。
C.问题:
(1)什么时候使用?
假设有个数据源S对象,当这个数据对象变化时,需要在柱状图和百分比图这两种视图中做相应改变,这个时候数据S就是被观察者,视图就是观察者。
(2)怎么实现?
被观察者一般聚合多个观察者,需要时候,调用抽象观察者的update接口即可。