DesignPattern
文章平均质量分 90
DR达仁
随心去做自己的决定
展开
-
代理模式
代理模式(Proxy Pattern)是结构型模式(Strutural)的一种,结构型模式模式描述如何将类或者对象结合在一起形成更大的结构。结构型模式的特点是通过组合类或者对象产生更大的结构以适应更高层次的逻辑需求。代理模式的目的是:Provide a surrogate or placeholder for another object to control access to it.意原创 2014-07-27 15:11:34 · 737 阅读 · 0 评论 -
单例模式
创建型模式创建型模式(Creation Pattern)是对类的实例化过程的抽象化,能够提供的对象的创建和管理职责,设计模式中创建型模式共有5种:单例模式工厂方法抽象工厂模式建造者模式原型模式1.2单例模式(Singleton Pattern)单例模式关注的是对象创建的次数和何时创建对象,对象创建的次数正如其名是1个,何时创建则衍生出单例模式的两种形式,饿汉模式和懒汉模式。原创 2014-07-18 22:06:10 · 881 阅读 · 0 评论 -
工厂方法模式
工厂方法模式是简单工厂模式的进一步抽象和推广。由于使用了多态性,工厂方法模式保持了简单工厂模式的优点,而克服了它的缺点。首先,在工厂方法模式中核心工厂类不在负责所有产品的创建,而是将具体创建的工作交给子类去做。这个核心类则称为一个抽象工厂角色,不接触具体产品类实例化的细节。当引入新的产品的时候,就可以在不修改具体工厂角色,这一特点是的工厂方法模式有着超越简单工厂模式的优越性。工厂方法模式的定义:Define an interface for creating an object, but let subc原创 2014-08-11 21:07:53 · 924 阅读 · 0 评论 -
简单工厂模式
工厂模式工厂方法模式又叫虚拟构造函数模式或者多态性工厂模式。工厂方法的用意是定义一个创建产品对象的工厂接口,将实际创见性工作推迟到子类中去。工厂模式可以分为简单工厂、工厂方法和抽象工厂模式。简单工厂模式严格说简单工厂模式不在23种GoF设计模式之中,它是由工厂决定创建具体类的实例。一个工厂类处于对产品类实例化的中心位置,它知道每一个产品,决定哪一个产品类应当被实例化。优点:允许客户端(具体产品类)相对独立于产品实例的创建过程,当引入新的产品的时候,不需要修改现有的产品类。缺点:由于对象的创建完全由原创 2014-08-11 02:24:16 · 699 阅读 · 0 评论 -
抽象工厂模式
抽象工厂模式是一个比较常用的设计模式,它的英文原话是:Provide an interface for creating families of related or dependent objects without specifying their concrete classes.意思是:为创建一组相关和相互依赖的对象提供一个接口,而且无须指定它们的具体类。抽象工厂模式的UML图如下原创 2014-08-12 00:52:54 · 753 阅读 · 0 评论 -
策略模式
策略模式(Strategy Pattern)是相对比较简单的一种设计模式,是通过定义一组算法,并且将每个算法封装到具有共同接口的独立类中,从而使它们之间可以相互转换,使算法在不影响客户端的情况下发生变化。策略模式体现了这样两个原则——封装变化和对接口编程而不是对实现编程。设计模式的作者把策略模式定义如下:Define a family of algorithms, encapsul原创 2014-08-22 23:25:53 · 624 阅读 · 0 评论 -
观察者模式
观察者模式(Observer Pattern)在项目中经常会被使用到,也被叫做发布订阅模式,也就是说 观察者 = 发布者 + 订阅者GoF的《设计模式》中对观察者是这样描述的:Define a one-to-many dependency between objects so that when one object changes state, all its depende原创 2014-09-05 00:18:49 · 1184 阅读 · 1 评论 -
装饰模式
装饰模式是23种设计模式之一,英文名叫Decorator Pattern,又叫装饰者模式。装饰模式是在不必改变原类文件和不使用继承的情况下,动态的扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。通过使用装饰模式,可以在运行时扩充一个类的功能。原理是:增加一个装饰类包裹原来的类,包裹的方式一般是通过在将原来的对象作为装饰类的构造函数的参数。装饰类实现新的功能,但是,原创 2014-08-19 19:01:51 · 990 阅读 · 0 评论 -
原型模式
原型模式(Proxy Pattern)是创建型模式(Creation)的一种,创建型型模式是对类的实例化过程的抽象化,能够提高对象的创建和管理职责。原型模式的英文原话是:Specify the kinds of objects to create using a prototypical instance,and create new object by copying this prot原创 2014-08-18 15:02:01 · 1214 阅读 · 0 评论 -
建造者模式
建造者模式(Builder Pattern)是创建型型模式(Creational Pattern)的一种,与工厂方法、抽象工厂等创建型模式不同,建造者模式需要关注一些创建的细节,它将产品的内部表象和产品的生产过程分割开来,从而使得一个创建的过程可以创建出具有不同表象的产品对象。建造者模式的英文原话是:Sepatate the construction of a complex object原创 2014-08-17 15:31:43 · 824 阅读 · 2 评论