思想: 气象站(观察者)和 需要从气象站获取天气数据的站点(被观察者), 观察者支持对被观察者的"注册、移除、推送"操作;
- 未使用观察者进行天气推送
- 当有其他第三方网站接入时, 气象站要修改dataChange()推送方法, 这样违背了OCP原则;
- 使用观察者
- 角色说明
- Subject: 观察者(气象站) -> 观察者能对被观察者动态的注册、移除、推送;
- Observer: 被观察者(第三方网站);
- registerObserver: 注册被观察者到观察者;
- removeObserver: 从观察者中移除被观察者;
- notifyObserver: 观察者推送消息给被观察者;
- 代码实现

本文探讨了观察者模式在气象站系统中的应用,详细解释了气象站作为观察者如何动态注册、移除和推送天气数据给第三方网站等被观察者。通过对比使用和未使用观察者模式的情况,阐述了其遵循开放封闭原则的优势。



1750

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



