设计模式
Carserdadi
这个作者很懒,什么都没留下…
展开
-
设计模式参考书籍
参考书籍 1. GOF设计模式。 《Design Patterns: Elements of Reusable Object-Oriented Software》,由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 合著(Addison- Wesley,1995)。这几位作者常被称为"四人组(Gang原创 2012-12-05 13:45:14 · 1091 阅读 · 0 评论 -
模版方法模式
定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。 类型:行为类模式 类图: 事实上,模版方法是编程中一个经常用到的模式。先来看一个例子,某日,程序员A拿到一个任务:给定一个整数数组,把数组中的数由小到大排序,然后把排序之后的结果打印出来。经过分析之后,这个任务大体上可分为两部分,排序和转载 2014-03-19 15:52:39 · 967 阅读 · 0 评论 -
创建类模式5 --原型模式
定义:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。 类型:创建类模式 类图: 原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件: 实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有一个,就是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clo转载 2014-03-19 16:01:11 · 1157 阅读 · 0 评论 -
创建类模式
创建类模式就是对类的对象进行创建时进行封装。 包括以下5个设计模式: 单例模式 工厂方法模式 抽象工厂模式 创建者模式 原型模式 为什么需要创建性模式 首先,在编程中,对象的创建通常是一件比较复杂的事,因为,为了达到降低耦合的目的,我们通常采用面向抽象编程的方式,对象间的关系不会硬编码到类中,而是等到调用的时候再进行组装,这样虽然降低原创 2014-03-19 16:09:29 · 1055 阅读 · 0 评论 -
创建类模式4--建造者模式
定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 类型:创建类模式 类图: 四个要素 产品类:一般是一个较为复杂的对象,也就是说创建对象的过程比较复杂,一般会有比较多的代码量。在本类图中,产品类是一个具体的类,而非抽象类。实际编程中,产品类可以是由一个抽象类与它的不同实现组成,也可以是由多个抽象类与他们的实现组成。抽象建造者:引入抽象转载 2014-03-19 16:02:37 · 1138 阅读 · 0 评论 -
策略模式
定义:定义一组算法,将每个算法都封装起来,并且使他们之间可以互换。 类型:行为类模式 类图: 策略模式是对算法的封装,把一系列的算法分别封装到对应的类中,并且这些类实现相同的接口,相互之间可以替换。在前面说过的行为类模式中,有一种模式也是关注对算法的封装——模版方法模式,对照类图可以看到,策略模式与模版方法模式的区别仅仅是多了一个单独的封装类Context,转载 2014-03-19 15:54:42 · 1000 阅读 · 0 评论 -
创建类模式2--工厂方法模式
定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。 类型:创建类模式 类图: 工厂方法模式代码 [java] view plaincopy interface IProduct { public void productMethod(); } cl转载 2014-03-19 15:57:44 · 1139 阅读 · 0 评论 -
创建类模式3--抽象工厂模式
定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。 类型:创建类模式 类图: 抽象工厂模式与工厂方法模式的区别 抽象工厂模式是工厂方法模式的升级版本,他用来创建一组相关或者相互依赖的对象。他与工厂方法模式的区别就在于,工厂方法模式针对的是一个产品等级结构;而抽象工厂模式则是针对的多个产品等级结构。在编程中,通常一个产品结构,转载 2014-03-19 15:58:32 · 977 阅读 · 0 评论 -
设计模式
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。只有精通了设计模式,才敢说真正理解了软件工程。可以说,设计模式是每一个架构师所必备的技能之一。作为一个面向对象设计程序员,只有精通了设计模式原创 2014-03-07 15:46:23 · 1108 阅读 · 0 评论 -
观察者模式
【1】基本概念 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。观察者模式又叫发布-订阅(Publish/Subscribe)模式。 【2】简单分析 我们先来看一下该设计模式的UML结构图 上图是Observer 模式的结构图,让我们可以进行更方便的描述:转载 2013-03-23 01:42:14 · 929 阅读 · 0 评论 -
状态模式
【1】基本概念 状态模式(State),当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 【2】简单分析 我们先来看下该设计模式的UML的结构图 【3】如何用Java语言实现该设计模式 本篇文章以一个贴近现实生活的例子来展示如何使用该设计模式,以方便大家尽快的掌握状态设计模式。例子:如某人去银行新开一个账户,该账户可以转载 2013-03-23 14:41:35 · 804 阅读 · 0 评论 -
外观(Facade)模式
【1】基本概念 外观模式(Facade),为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 【2】简单分析 我们先来看下该设计模式的UML结构图: 【3】如何用java语言实现该设计模式: 由于该设计模式比较简单,而且我们平时在开发项目的过程中经常会用到该设计模式的,我就不做过多的解析了转载 2013-03-23 17:42:27 · 909 阅读 · 0 评论 -
装饰模式
【2】简单分析 我们先来看下该设计模式的UML结构图 上图是Decorator 模式的结构图,让我们可以进行更方便的描述: Component是定义一个对象接口,可以给这些对象动态地添加职责。 ConcreteComponent是定义了一个具体的对象,也可以给这个对象添加一些职责。 Decorator是装饰抽象类,继承了Component,从外类来转载 2013-03-23 15:11:39 · 975 阅读 · 0 评论 -
创建类模式1--Singleton模式
sdasd转载 2013-12-09 22:55:36 · 1106 阅读 · 0 评论