在一一分析每种设计模式之前,我首先把所有的设计模式做了一个总结,大致分成三部分:创建型模式、结构型模式和行为型模式。
一、创建型模式
1、抽象工厂模式
提供一个创建一系列或相关依赖对象的接口,而无需指定它们具体的类。
2、建造者模式
将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
3、工厂方法模式
定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂...
分类:
其他好文 时间:
2014-07-24 10:39:44
阅读次数:
210
本文介绍11种行为型设计模式里的策略模式、模板方法、访问者模式。一、策略模式定义一系列的算法,把它们每个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。1.Strategy定义所有支持的算法的公共接口。Context使用这个接口来调用某ConcreteStrategy定义的算法。public abstract class Strategy { public abst...
分类:
编程语言 时间:
2014-07-23 13:37:16
阅读次数:
247
设计模式的第三大类型——行为模式,下面是对观察者模式、模板方法模式、命令模式、状态模式、职责链模式这五个的读后总结,欢迎交流!
观察者模式(Observer):定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。[大话设计模式]
特点:类似于面向对象的多态,只是面向对象多态讲的是同一对象在不同时间和不同条件下表现...
分类:
其他好文 时间:
2014-07-18 21:33:15
阅读次数:
203
一、什么是模板方法模式Template Method模式也叫模板方法模式,是行为模式之一,它把具有特定步骤算法中的某些必要的处理委让给抽象方法,通过子类继承对抽象方法的不同实现改变整个算法的行为。二、模板方法模式的应用场景Template Method模式一般应用在具有以下条件的应用中:- 具有统一...
分类:
其他好文 时间:
2014-07-16 21:39:40
阅读次数:
296
定义
给定一个语言, 定于它的文法,并定义一个解释器,这个解释器使用改表示来解释语言中的句子。
类型
行为型模式
案例
像非常熟知的正则表达式就是描述字符串模式的一种标准语言,它为每一个模式都构造了一个特定的算法。
AbstractExpression - 一个抽象的解释操作,这个接口为抽象语法树中所有的节点所共享...
分类:
其他好文 时间:
2014-07-16 14:32:56
阅读次数:
288
本文接着介绍11种行为型模式里的备忘录模式、观察者模式、状态模式。一、备忘录模式 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。还是比较好理解的。1.Memento 备忘录存储原发器对象的内部状态,这个类就是要存储的对象的状态。状态需要多少个变量,在Memento里就写多少个变量。public class Memento {...
分类:
编程语言 时间:
2014-07-15 12:53:33
阅读次数:
324
1.观察者模式又叫做发布-订阅模式。2.观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。3.使用观察者模式的好处:维护相关对象间的一致性。我们不希望为了维持一致性而使各类紧密耦合,这样会给维护、...
分类:
其他好文 时间:
2014-07-11 11:56:51
阅读次数:
209