在敲机房收费系统重构版之间我们学习了设计模式,但是除了书上的实例外我们并没有再去深究这些东西,同时可敢肯定的是我们在刚学习设计模式的时候也不是很清楚每个具体的处理逻辑。就像我们之前学过的很多东西一样,只是先了解一下有这么个东西存在,以后用的时候再深究其中的原理。
在机房收费系统中用简单工厂或者是策略模式最好的地方其实是处理固定用户和临时用户结账下机的时候。不同级别的用户,按照不用的方式进行结算(...
分类:
其他好文 时间:
2014-05-22 08:25:36
阅读次数:
223
简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定哪一个产品类的实例。
工厂类是简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品对象。
优点:
外界可以从直接创建具体产品对象的尴尬局面摆脱出来,仅仅需要负责“消费”对象就可以了。而不必管这些对象究竟如何创建及如何组织的.明确了各自的职责和权利,有利于整个软件体系结构的优化。
缺点:
由于...
分类:
其他好文 时间:
2014-05-22 07:56:29
阅读次数:
166
1. 为什么要用接口2. 工厂方法模式1. 为什么要用接口 之前的打印机程序,
open、close、print对于惠普、佳能实际上应该都是不同的, 不同的打印机, 开机、关机、打印都应该不同
所以更靠谱的是将Printer定义为interface类型1 interface Printer{2 .....
分类:
其他好文 时间:
2014-05-22 04:50:04
阅读次数:
228
创建模式:单件模式、工厂模式、抽象工厂模式、生成器模式、原型模式。结构模式:适配器模式、桥接模式、组成模式、装饰模式、外观模式、享元模式、代理模式。行为模式:中介者模式、命令模式、备忘录模式、状态模式、策略模式、解释器模式、迭代器模式、观察者模式、访问者模式、模板方法模式。第一类:单件模式(Sing...
分类:
其他好文 时间:
2014-05-22 02:24:18
阅读次数:
391
一、Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点
二、AbstractFactory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。 三、Factory
Method,工厂方法:定义一个用于创建对象的接口,让子类决定实例化哪一.....
分类:
其他好文 时间:
2014-05-22 00:19:43
阅读次数:
278
设计模式主要分三个类型:创建型、结构型和行为型。
创建型:
一、Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点
二、Abstract Factory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们的具体类。
三、Factory Method,工厂方法:定义一个用于创建对象的接口,让子类决定实例化哪一个...
分类:
其他好文 时间:
2014-05-21 16:20:55
阅读次数:
216
关键词 :hook 钩子 Applet 中 init() destory() 为钩子,需要子类去实现。
新原则: 别调用我们,我们会调用你们 高层调用低层 低层不能调用高层。
目的 :封装算法
模板方法:子类决定如何实现算法中的步骤
策略:封装可互换的行为,然后使用委托来决定要采用哪一个行为
工厂方法:由子类决定实例化哪个具体类
OO原则:新原则上面
OO模式:...
分类:
其他好文 时间:
2014-05-21 15:51:32
阅读次数:
270
等等,如果你再仔细想想,各种各样的情况下都有各种各样的缺点(当然这么写也有优点的,至少简单嘛,如何设计没有最好,只有合适的),那么我们有没有其他方式来规避这些问题呢?其实我们需要一个对象时,除了自己new之外,还有就是从其他地方获取,我们完全可以把这些按钮的创建过程放到一起,客户端使用的时候直接获取就行了。
工厂模式通用类图如下:
三、适用场景及效果(优缺点)
没有工厂的时候,假如我们要做饭,需要用到火,创建火的同时发现需要用到木柴,还要创建一个锯来锯木柴......代码如...
分类:
其他好文 时间:
2014-05-20 14:17:41
阅读次数:
293
工厂方法模式/************************************************************************设计模式工厂方法模式在简单工厂里,工厂类的职责是根据不同的输入去实例化不同的类对象(实例化不同类对象的代码是在一个工厂类中),作为客户端来说,...
分类:
其他好文 时间:
2014-05-20 08:00:33
阅读次数:
230