1.2 观察者模式(Observer Pattern)

> 观察者模式原理
> 观察者模式示例演示
> Java内置观察者
> 观察者模式关键点、注意点
1.3.1 观察者模式原理
1.3.1.1 Internet气象站项目,普通OO设计方案,有些问题
1.3.1.2 引入观察者模式概念
1.3.1.3 新的设计方案
1.3.1.1.1 Internet气象站项目:
提供温度、气压和温度的接口
测量数据更新时需时时通知给第三方
需要设计开放型API,便于其他第三方公司也能接入气象站获取数据
1.3.1.1.2 WeatherData
1.2 观察者模式(Observer Pattern)
1.3.1.1.3 一个通常的设计方案
1.2 观察者模式(Observer Pattern)
1.3.1.1.4 有些问题
1)其他第三方公司接入气象站获取数据的问题
2)无法在运行时动态的添加第三方
1.3.1.2 引入观察者模式概念
1.3.1.2.1 观察者模式就像定牛奶业务
1)奶站,Subject
2)用户,Observer
1.3.1.2.2 Subject:登记注册、移除和通知
1.2 观察者模式(Observer Pattern)
1.3.1.2.3 ObServer:接收输入
1.2 观察者模式(Observer Pattern)
1.3.1.2.4 观察者模式:对象之间多对一依赖的一种设计模式,被依赖的对象为Subject,依赖的对象为Observer,Subject通知Observer变化
1.3.1.3新的设计方案
1.3.1.3.1 用观察者模式设计重新设计的方案
1.2 观察者模式(Observer Pattern)
1.3.2观察者模式示例演示
1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)
1.3.2 普通版
1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)
1.3.3 Java内置观察者
1.3.3.1 Java内置的观察者(先进后出)
Observable(类)java.util.Observable
Observer(接口)java.util.Observable
内部类保存数据
1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)1.2 观察者模式(Observer Pattern)
1.3.3.2 用Java内置观察者重新设计该项目
1.3.3.3 内置观察者的注意点
Observable是类而不是接口
1.3.4 Java观察者关键点和注意点
1.3.4.1 示例项目中问题分析
1.3.4.2 观察者模式的意义
1.3.4.3 松耦合:对象之间的交互关系,异步的,不需要依赖
高内聚,隔离影响的意义
1.3.4.4 使用Java内置观察者的注意点