设计模式学习笔记(二)- -观察者模式
2017-11-24 11:08
176 查看
[同系列文章]
1.设计模式学习笔记(一)- -策略模式
我又来了,续更ヾ(◍°∇°◍)ノ゙,接下来的内容是观察者模式的学习笔记
以下正文ヽ( ̄▽ ̄)ノ)
上图:
简要的代码:
1.原则,面向接口开发,so,写两个接口,一个“主题”(在Java里叫做:被观察者Observable),另外一个叫做“观察者”。
2.然后实现这两个接口,超简单。
3.测试
4.结束
嘤嘤嘤,文章这么短,莫非..?ε≡٩(๑>₃<)۶
其实重点就在于理解“一对多”的关系,搞明白了,你就懂得了所谓的观察者和被观察者,成功入门~~~好好看书,frighting!
原则:
1.为交互对象之间的松耦合设计而努力
2.见下章:) 设计模式学习笔记(三)–装饰者模式
1.设计模式学习笔记(一)- -策略模式
我又来了,续更ヾ(◍°∇°◍)ノ゙,接下来的内容是观察者模式的学习笔记
以下正文ヽ( ̄▽ ̄)ノ)
观察者模式
简要概括:书本以“气象站”为例,气象站–>天气数据对象–>布告板。其中,气象站更新数据的时候会通知天气数据对象更新数据,而天气数据对象则会将收到数据会通知N个布告板更新显示。这种“消息持有者”通知多个“消息接收者”的情况,可以进一步抽离为“观察者”模式。简单的说就是一对多的关系。上图:
简要的代码:
1.原则,面向接口开发,so,写两个接口,一个“主题”(在Java里叫做:被观察者Observable),另外一个叫做“观察者”。
public interface Subject{ public void registerObserver();//注册 public void removeObserver();//移除 public void notifyObservers();//通知观察者们 } public interface Observer{ public void update(); //更新 }
2.然后实现这两个接口,超简单。
public class ConcreteSubject implements Subject{ public void registerObserver(){ //注册 } public void removeObserver(){ //移除 public void notifyObservers(){ //通知观察者们 } } public class ConcreteObserver implements Observer{ public void update(){ //更新 } }
3.测试
.... .... 纳尼,被省略了?那...ni自己写吧2333
4.结束
嘤嘤嘤,文章这么短,莫非..?ε≡٩(๑>₃<)۶
其实重点就在于理解“一对多”的关系,搞明白了,你就懂得了所谓的观察者和被观察者,成功入门~~~好好看书,frighting!
原则:
1.为交互对象之间的松耦合设计而努力
2.见下章:) 设计模式学习笔记(三)–装饰者模式
相关文章推荐
- 设计模式学习笔记-观察者模式
- 设计模式学习笔记-观察者模式
- 设计模式C++学习笔记之十六(Observer观察者模式)
- 设计模式学习笔记(二)之观察者模式(Observer)
- 步步为营 .NET 设计模式学习笔记 十二、Observer (观察者模式)
- 设计模式学习笔记十一:观察者模式
- 设计模式学习笔记-观察者模式
- 学习设计模式笔记--观察者模式
- 设计模式学习笔记-观察者模式
- 设计模式学习笔记 - 观察者模式
- 研磨设计模式之观察者模式 学习笔记
- 设计模式C++学习笔记之十六(Observer观察者模式)
- 设计模式C++学习笔记之一(Observer观察者模式)
- 设计模式学习笔记之观察者模式(一)
- 设计模式学习笔记——观察者模式
- IssueVision 学习笔记(三)-----设计模式之OBSERVER(观察者)模式
- 设计模式学习笔记-观察者模式
- 【设计模式学习笔记】观察者模式
- 设计模式学习笔记之观察者模式
- 设计模式学习笔记之观察者模式