标签:
在研究这个模式之前,我们要尽可能的知道面向对象编程的概念,充分了解"对象"的在程序中的含义。
"对象" 是一个有自己的属性、方法的整体。是一个"类"的实例化的个体。我们可以把"类"看成一个概念, 而对象就是这个"概念"的具体化的实例。比如说:”人“就是一个概念,我们都是人,都属于”人“类,我们每一个个体就是”人“类具体化的实例对象,在php中,当我们new一个类生成对象开始,这个对象就在内存中存在,不管我们给这个对象创建多少个引用(把这个对象付给某个或某些变量),这个对象在内存中永远是唯一的,比如:
好了,理解了上面的内容,接下来的观察者设计模式就相对简单了.
”观察者设计模式", 顾名思义就是有两个成员,一个成员称之为"观察者",一个成员称之为"被观察者",当被观察者的状态发生改变时,可以被所有的观察者收到(个人感觉,有点儿像触发器的),与触发器不同的是,被观察者不需要知道有多少个观察者(宏观上的概念),只需建立观察者时,告诉谁是被观察者就行了,当被观察者发生改变的时候,所有的观察者都要接收到通知,在代码上的表现如下:
怎么样?神奇吧!哈哈~这是怎么实现的呢?请继续把~
看完了是不是觉得不神奇啦~,有点儿像魔术的意思吧!把所有的控制都封装到了类的里面,在外面直接调用就行了,这就是观察者设计模式,只要按照这个规则写好的代码,然后外面用起来很舒服啦。也就是设计模式要达到的目标!!!
标签:
原文地址:http://www.cnblogs.com/shenming/p/4213648.html