一:欢迎来到设计模式世界:设计模式入门
1.设计原则:
1.设计模式让你和其他开发人员之间有共享的词汇,一旦懂得这个些词汇,和其他开发人员之间沟通就很容易,也会促使那些不懂的程序员开始学习设计模式。设计模式也可以把你的思考架构层次提高到模式层面,而不是仅停留在琐碎的对象上。
2.观察者模式:
我建立了这个广播类,它能够追踪所有的倾听对象,而且任何时候只要有新资料进来就会通知每一个倾听者。最棒的是倾听者可以随时加入广播系统,甚至可以随时退出。这样的设计方式相当动态和松耦合。
二:观察者模式
2.1概念与原则:
改变的地方需要封装起来。
针对具体实现编程,会导致我们以后再增加或者删除的时候必现修改程序(所有不建议)。
所有实现都是一样的参数的时候,类似看起来就是一个统一的接口。
认识观察者模式(报纸订阅为例):
(1)报社的业务就是出版报纸。
(2)向偶家报社订阅报纸,只要他们有新的报纸出版,就会给你发送过了,只要你是他们的订户,你就会一直收到报纸。
(3)当你不想看报纸的时候,取消订阅,他们就不会再送报纸过来了。
(4)只要报社还在运营,就会一直有人订阅/取消订阅报纸。
2.2出版者+订阅者=观察者模式
如果你了解报纸的订阅是怎么回事,其实就知道观察着是怎么回事,只是名称不太一样:出版者改成“主题”(Subject),订阅者改成“观察者”(Observer)。如图2.2
图2.2
在真实的世界中,通知看到观察者模式被定义为:
**观察者模式:**定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都是会收到通知并自动更新。
实现气象站的流程如下图2.3
图2.3
mvc(model-view-controller)模式:
MVC模式是软件工程中常见的一种软件架构模式,该模式把软件系统(项目)分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)
总结: