观察者模式

来源:互联网 发布:点对点数据专线 编辑:程序博客网 时间:2024/06/05 23:53

设计原则

观察者模式主要用到的设计原则

  • 封装变化
  • 多用组合,少用继承
  • 针对接口编程,不针对实现编程
  • 为交互对象之间的松耦合设计而努力

设计模式

观察者模式: 在对象之间定义一对多的依赖,这样依赖,当一个对象改变状态,依赖它的对象都会收到通知,并自动更新

观察者模式类图
这里写图片描述

要点

  • 观察者模式定义了对象之间一对多的关系
  • 主题(也就是可观察者)用一个共同的接口来更新观察者
  • 观察者和可观察者之间用松耦合方式结合(loosecoupling),可观察者不知道 观察者的细节,只知道观察者实现了观察者接口
  • 使用此模式时,你可从被观察者处推(push)或拉(pull)数据(然
    而,推的方式被认为更”正确”)
  • 有多个观察者时,不可以依赖特定的通知次序
  • Java有多种观察者模式的实现,包括了通用的java.util.Observable
  • Swing大量使用观察者模式,许多GUI框架也是如此
  • 此模式也被应用在许多地方,例如:JavaBeans、RMI
0 0
原创粉丝点击