import java.util.ArrayList;import java.util.Iterator;/* 抽象观察者类 */abstract class Observer { public abstract void update();}/* 抽象被观察主题类 */abstrac...
分类:
编程语言 时间:
2015-04-24 18:50:13
阅读次数:
175
1) 观察者模式定义略,各种设计模式的书上都有定义。2) 观察者模式一般实现观察者模式一般实现,都是“被观察者”保存一个“观察者”的列表,循环这个列表来通知“观察者”。代码,其中使用了boost的智能指针shared_ptr:[cpp]view plaincopy#include#include#i...
分类:
其他好文 时间:
2015-04-23 23:10:45
阅读次数:
226
1. KVO观察者模式. 给某个实例变量注册一个观察者. 其中 Model为定义的模型 ICBCPrice为模型的实例变量. options的两个值分别是 新值和旧值 context 可以起到表示作用. [_Model addObserver:self forKeyPath:@"ICBCPri...
分类:
其他好文 时间:
2015-04-22 23:39:06
阅读次数:
130
1. 具体的ConcreteSubject里有个IObserver的List2. 抽象的ISubject里定义了针对IObserver的几个方法,例如addObserver(),deleteObserver(),notifyAllObservers()3. 具体的ConcreteObserver里有...
分类:
其他好文 时间:
2015-04-22 22:01:29
阅读次数:
120
场景: -- 网站上,很多人订阅了“java主题”的新闻,当有这个主题新闻时,就会将这些新闻发给所有订阅的人。 我们可以把多个订阅者,客户称之为观察者,需要同步给多个订阅者的数据封装到对象中,称之为目标核心: -- 观察者模式主要用于1:N 的通知。当一个对象(目标对象Subject或Objs...
分类:
其他好文 时间:
2015-04-21 20:43:01
阅读次数:
126
概念不细说了,这边记录用Magento单例模式:例如Mage::app(),Mage::getSingleton('catalog/product')magento工厂模式:一般在xml配置。magento观察者模式:事件监听,event。如果找到改事件呢?比如Mage::getSingleton(...
分类:
其他好文 时间:
2015-04-21 17:39:42
阅读次数:
122
今天学习了一下观察者模式,做一下总结。
什么是观察者模式?
观察者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知并被自动更新。
观察者模式也叫“依赖”或者“发布——订阅”模式。举一些例子来说明什么是观察者模式。
比如订阅者与报刊之间就属于目标(subject)与观察者(observer)关系。每一个订阅者相当于一个观察者,而这...
分类:
编程语言 时间:
2015-04-21 09:50:52
阅读次数:
196
JAVA设计模式设计模式分类JAVA设计模式可根据创建型模式、结构型模式、行为型模式分为三大类:
创建型模式
单例模式、工厂模式、抽象工厂模式、
建造者模式、原型模式结构型模式
适配器模式、桥接模式、装饰模式、
组合模式、外观模式、享元模式、代理模式行为型模式
模版方式模式、命令模式、迭代器模式、观察者模式、
中介者模式、备忘录模式、解释器模式、状态模式、...
分类:
编程语言 时间:
2015-04-21 01:50:13
阅读次数:
202
一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式...
分类:
其他好文 时间:
2015-04-20 22:30:15
阅读次数:
162
1.观察者模式(Observer Mode) 定义:一种一对多的关系,属于类与类之间的关系,不涉及继承。 当一个对象变化时,其它依赖该对象的对象都会收到通知,并且随着变化! 关系图: 2.领导通知学生和老师的例子 2.1 观察者//观察者接口:更新方法(更新所有的子类)public in...
分类:
编程语言 时间:
2015-04-20 13:05:17
阅读次数:
140