观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会受到通知并自动更新。
考虑这样一个应用:气象站有许多装置来实时监测天气状况,包括温度计,湿度计等。在许多不同的地方有显示屏,要求这些显示屏能够实时查看到气象站所获得的天气数据。并且可以随时增加或者减少显示屏的数量。根据观察者模式,得出如下设计:
观察者模式类图:

要点:
被观察者用一个公共的接口来更新观察者。 观察者与被观察者是松散耦合的,被观察者只需要知道观察者所实现的观察者接口。 许多GUI框架采用观察者模式处理事件。
设计原则:
为交互对象之间的松散耦合设计而努力
本文介绍了观察者模式的基本概念,探讨了其如何通过定义对象间的一对多依赖关系,实现对象状态变化时所有依赖对象的自动更新。以气象站为例,阐述了如何利用观察者模式实现实时天气数据同步。
1277

被折叠的 条评论
为什么被折叠?



