博客专栏  >  架构   >  设计模式

设计模式

设计模式是一个程序员迟早要掌握的技能。本专栏将对程序设计中常用的设计模式进行详细的解读。

关注
593 已关注
25篇博文
  • 23种设计模式(15):备忘录模式

    定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态 类型:行为类 类图:         我们在编程的时候,经常需要保存...

    2012-06-27 21:38
    44618
  • 23种设计模式(14):解释器模式

    定义:给定一种语言,定义他的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子。 类型:行为类模式 类图:         解释器模式是一个比较少用的模式,本人之前也没有用...

    2012-06-15 12:34
    25914
  • 23种设计模式(13):迭代器模式

    定义:提供一种方法访问一个容器对象中各个元素,而又不暴露该对象的内部细节。 类型:行为类模式 类图:        如果要问java中使用最多的一种模式,答案不是单例模式,也不是工厂模式,更...

    2012-05-28 21:54
    33024
  • 23种设计模式(12):策略模式

    定义:定义一组算法,将每个算法都封装起来,并且使他们之间可以互换。 类型:行为类模式 类图:        策略模式是对算法的封装,把一系列的算法分别封装到对应的类中,并且这些类实现相同的接...

    2012-05-28 16:05
    25350
  • 23种设计模式(11):责任连模式

    定义:使多个对象都有机会处理请求,从而避免了请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。 类型:行为类模式 类图:        ...

    2012-05-15 14:47
    17825
  • 23种设计模式(10):命令模式

    定义:将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。 类型:行为类模式 类图: 命令模式的结构         ...

    2012-05-09 17:41
    36991
  • 访问者模式讨论篇:java的动态绑定与双分派

    java的动态绑定         所谓的动态绑定就是指程执行期间(而不是在编译期间)判断所引用对象的实际类型,根据其实际的类型调用其相应的方法。java继承体系中的覆盖就是动态绑定的,看一下如下的...

    2012-04-25 10:57
    15310
  • 23种设计模式(9):访问者模式

    定义:封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。 类型:行为类模式 类图:        访问者模式可能是行为类模式中最复杂的一种...

    2012-04-23 14:49
    52885
  • 23种设计模式(8):观察者模式

    定义:定义对象间一种一对多的依赖关系,使得当每一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。 类型:行为类模式 类图:         在软件系统中经常会有这样的需求:如果一...

    2012-04-18 08:41
    31873
  • 23种设计模式(7):中介者模式

    定义:用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互。 类型:行为类模式 类图: 中介者模式的结构       ...

    2012-04-05 21:30
    31465
  • 23种设计模式(6):模版方法模式

    定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。 类型:行为类模式 类图:         事实上,模版方法是编程中一...

    2012-03-29 09:04
    23250
  • 创建类模式总结篇

    创建类模式主要关注对象的创建过程,将对象的创建过程进行封装,使客户端可以直接得到对象,而不用去关心如何创建对象。创建类模式有5种,分别是: 单例模式:用于得到内存中的唯一对象。工厂方法模式:用于...

    2012-03-26 09:03
    16352
  • 23种设计模式(5):原型模式

    定义:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。 类型:创建类模式 类图: 原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype...

    2012-03-26 08:58
    62778
  • 23种设计模式(4):建造者模式

    定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 类型:创建类模式 类图: 四个要素 产品类:一般是一个较为复杂的对象,也就是说创建对象的过程比较复杂,...

    2012-03-20 22:52
    45498
  • 23种设计模式(3):抽象工厂模式

    定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。 类型:创建类模式 类图: 抽象工厂模式与工厂方法模式的区别         抽象工厂模式是工厂方法模式的升级版...

    2012-03-16 08:51
    140137
  • 23种设计模式(2):工厂方法模式

    定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。 类型:创建类模式 类图: 工厂方法模式代码 interface IProduct { ...

    2012-03-15 09:05
    89350
  • 单例模式讨论篇:单例模式与垃圾回收

    Jvm的垃圾回收机制到底会不会回收掉长时间不用的单例模式对象,这的确是一个比较有争议性的问题。将这一部分内容单独成篇的目的也是为了与广大博友广泛的讨论一下这个问题。为了能让更多的人看到这篇文章,请各位...

    2012-03-08 09:14
    49898
  • 23种设计模式(1):单例模式

    定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 类型:创建类模式 类图: 类图知识点: 1.类图分为三部分,依次是类名、属性、方法 2.以>结尾的为注释信息 3...

    2012-03-08 09:12
    104042
  • 设计模式六大原则(6):开闭原则

    定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。 问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对...

    2012-02-27 08:48
    68486
  • 设计模式六大原则(5):迪米特法则

    定义:一个对象应该对其他对象保持最少的了解。 问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。 解决方案:尽量降低类与类之间的耦合。          ...

    2012-02-27 08:40
    56035

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部