一、概述 与简单工厂模式相比,工厂模式使一个类的实例化延迟到了其子类处理,改善了简单工厂对修改不能关闭的问题。 这里我们要关注的是代码的变化:与简单工厂模式相比,与产品类相关的类保持不变,但与工厂类相关的类会有变化。 所以这里有关产品的类的实现完全照搬了简单工厂的代码。我们只要关注工厂类的变化,就可...
分类:
其他好文 时间:
2014-06-27 00:18:36
阅读次数:
313
一、概述###抽象工厂模式,以一个鞋业代理工厂为例(可代理生产Nike,Adidas的鞋子)ConcreteFactory1, ConcreteFactory2 这里对实例工厂的分类,每一个实例工厂对应一可以看做是生产同一系列(品种)下的产品, 举例:前者代表Nike鞋工厂类,后者代...
分类:
其他好文 时间:
2014-06-27 00:05:37
阅读次数:
250
z:大侠,我又回来了。 M: 内部类懂了,其实设计模式很多考察的都是基础知识,一个学生能有什么项目工程经验呢?你很上进。咱们聊聊内部类,特别是单例模式中的静态内部类.我们开始吧; M.什么时内部类? 简单来说就是类中有类。 M:静态内部类和普通内部类有什么区别? 普通内部类可以理解为外部类的普通方法...
分类:
其他好文 时间:
2014-06-26 23:59:13
阅读次数:
369
模板模式是一个非常简单的行为类模式。 模板方法Gof的定义是:在一个方法里定义算法的骨架,将一些步骤延迟到其子类。 模板模式包含一个抽象的类和它的实现类,我们在抽象类中定义骨架,需要用到的方法都是抽象方法,具体的实现由它的子类来完成。 eg: publicabstractclassTem...
分类:
其他好文 时间:
2014-06-26 23:30:43
阅读次数:
269
一、概述工厂模式具体包括了简单工厂、工厂方法、抽象工厂,它们是按照从简单到复杂的顺序排列的,属于设计模式中的创建型,其中简单工厂并不属于GOF的23中模式。 但是它是理解其它的工厂模式的一个很好的基础,所以很多人在讲述设计模式的时候会提到简单工厂模式。 创建型模式关注的是对象的创建,创建型模式将创建...
分类:
其他好文 时间:
2014-06-26 23:28:06
阅读次数:
256
一、概述/* 一般情况下,我们建立的一些类是属于工具性质的,基本不用存储太多的跟自身有关的数据,在这种情况下,每次都去new一个对象,即增加了开销,也使得代码更加臃肿。 其实,我们只需要一个实例对象就可以。如果采用全局或者静态变量的方式,会影响封装性,难以保证别的代码不会对全局变量造成影响。 考虑到...
分类:
其他好文 时间:
2014-06-26 23:21:25
阅读次数:
258
一、简介单例模式主要用的作用是用于保证程序运行中某个类只有一个实例,并提供一个全局入口点。单例模式(Singleton)为GOF阐述的标准24种设计模式中最简单的一个。但随着时间推移,GOF所阐述的单例实现已不能完全满足实际应用。"ensure a class has only one instan...
分类:
其他好文 时间:
2014-06-25 13:20:34
阅读次数:
193
设计模式被分成了三种类型,这次来说一下创建型中的工厂家族(简单工厂方法,工厂方法模式,抽象工厂)。通过了解,三者之间的比較来加深对工厂家族的了解。简单工厂: 工厂类中有必要的逻辑推断,依据client的选择能够动态的实例化相关类.去除了与详细产品的依赖。 例: 在上述计算器的样例...
分类:
其他好文 时间:
2014-06-25 12:58:22
阅读次数:
171
该文代码来自设计模式之惮一书。观察者模式定义: 观察者模式也叫做发布订阅模式。观察者模式中的角色: 1、被观察者 被观察者职责为管理观察者并通知观察者。 2、观察者 对接受到的消息进行处理。/// /// 被观察者 /// public abstract cl...
分类:
其他好文 时间:
2014-06-25 11:20:41
阅读次数:
317
建造者模式(Builder Pattern)
一听这个名字,你可能就会猜到一二分了。建造者简单理解就是造东西,只不过建造者模式建造的不是一个简单的东西,是一个比较复杂的东西。就好像盖房子,需要打地基、砌墙、灌水泥、封顶,最后墙面贴瓷砖。
建造者设计模式是一个构造复杂对象的设计模式。在一个软件系统中,可能会面临创建一个复杂对象的工作,如果我们使用单一的方法或者单一的对象来创建会比...
分类:
其他好文 时间:
2014-06-25 08:05:09
阅读次数:
208