摘要:
设计模式-适配器模式(adapter)适配器模式定义 将两个不兼容的类合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adapter(适配器)两个身份。为何使用适配器模式 经常碰到要将两个没有关系的类组合在一起使用,第一解决方案是:修改各自类的接口,但是我们没有代码,或者不愿意为一个应用修改各自的接口。那么这种Case下,Adapter可以很好的解决这个问题。使用这两个接口的合体。如何使用适配器模式 适配器模式有类的适配器模式和对象的适配器模式两种不同的形式。 对象的适配器模式:结构图:上图中Adaptee中没有sampleOperation2()这个方法,然而... 阅读全文
随笔分类 - 设计模式
设计模式-builder(构造器模式)
2013-04-16 21:54 by java20130722, 352 阅读, 收藏,
摘要:
设计模式-builder(构造器模式)Bilder模式定义: 将一个复杂对象的构建和表示分离,是同样的创建构建过程可以创造不同的表示。 Builder模式是一步一步创建一个复杂的对象,它允许用户可以只通过指定复杂对象的类型和内容就可以构建它们。用用不知道内部的具体构建细节。Builder模式是非常类似抽象工厂模式,细微的区别大概只是在反复使用中才能体会到。为何使用建造者模式 是为了将复杂对象的构建过程与它的部件分离。注意: 是解耦过程和部件。 因为一个复杂的对象,不但有很多大量组成部分。例如汽车,有很多部件:车轮、方向盘、发动机,还有各种小零件等等,部件很多,但远不止这些,如何将这些部... 阅读全文
设计模式-Observer(观察者模式)
2013-04-10 15:43 by java20130722, 283 阅读, 收藏,
摘要:
设计模式-Observer(观察者模式)Observer模式应该可以说是应用最多、影响最广的模式之一,因为Observer的一个实例Model/View/Control(MVC)结构在系统开发架构设计中有着很重要的地位和意义,MVC实现了业务逻辑和表示层的解耦。个人也认为Observer模式是软件开发过程中必须要掌握和使用的模式之一。在MFC中,Doc/View(文档视图结构)提供了实现MVC的框架结构(有一个从设计模式(Observer模式)的角度分析分析Doc/View的文章正在进一步的撰写当中,遗憾的是时间:))。在Java阵容中,Struts则提供和MFC中Doc/View结构类似的实 阅读全文
组合,聚合,关联,依赖 的区别
2013-04-07 15:45 by java20130722, 543 阅读, 收藏,
摘要:
组合,聚合,关联,依赖 的区别依赖与关联依赖(Dependency) :含义:是类与类之间的连接,表示一个类依赖于另外一个类的定义;依赖关系仅仅描述了类与类之间的一种使用与被使用的关系;体现:在Java和C++中体现为局部变量、方法/函数的参数或者是对静态方法的调用;举例:人依赖于水和空气;汽车依赖汽油;UML图表示的依赖关系:依赖:比如说我要过河,没有桥怎么办,我就去借来一条小船渡过去。我与小船的关系仅仅是使用(借用)的关系。表现在代码上,为依赖的类的某个方法以被依赖的类作为其参数。或者是class A 的某个方法创造了 class B 的实例抑或对class B的静态方法的调用。如果A依赖 阅读全文
JDK中设计模式
2013-04-07 07:44 by java20130722, 173 阅读, 收藏,
摘要:
原文:http://blog.csdn.net/gtuu0123/article/details/6114197本文主要是归纳了JDK中所包含的设计模式,包括作用和其设计类图。首先来个总结,具体的某个模式可以一个一个慢慢写,希望能对研究JDK和设计模式有所帮助。一、设计模式是什么(1)反复出现问题的解决方案(2)增强软件的灵活性(3)适应软件不断变化二、学习JDK中设计模式的好处(1)借鉴优秀代码的设计,有助于提高代码设计能力(2)JDK的设计中体现了大多数设计模式,是学习设计模式的较好的方式(3)可以更加深入的了解JDK三、类间关系继承、委托、依赖、聚合、组合四、介绍方式(1)作用:归纳某设 阅读全文
设计模式-单例模式(singleton)
2013-04-02 07:58 by java20130722, 171 阅读, 收藏,
摘要:
设计模式-单例模式(singleton)Singleton模式是设计模式中最为简单、最为常见、最容易实现,也是最应该熟悉和掌握的模式。且不说公司企业在招聘的时候为了考察员工对设计的了解和把握,考的最多的就是Singleton模式。模式结构图:Singleton模式典型的结构图为: 在Singleton模式的结构图中可以看到,我们通过维护一个static的成员变量来记录这个唯一的对象实例。通过提供一个staitc的接口instance来获得这个唯一的实例。实现:SingletonTest: 实现3实现单例package com.designpatten.singleton; public... 阅读全文
抽象工厂 abstractFactory
2013-03-28 17:50 by java20130722, 164 阅读, 收藏,
摘要:
AbstractFactory模式就是用来解决这类问题的:要创建一组相关或者相互依赖的对象。AbstractFactory模式典型的结构图:假设:有若干骨头和鱼残渣, 需要狗和猫处理。 因此这种情况下,猫和狗是一起协同工作。 AbstractFactory模式关键就是将这一组对象的创建封装到一个用于创建对象的类中,维护这样一个创建类总比维护n多相关对象的创建过程要简单的多。代码:IAbstractFactory:public interface IAbstractFactory { Dog createDog() ; Cat createCat() ;
}
CreateFactory... 阅读全文
工厂模式
2013-03-28 00:16 by java20130722, 159 阅读, 收藏,
摘要:
工厂模式factory模式的两个最重要的功能: 1)定义创建对象的接口,封装了对象的创建; 2)使得具体化类的工作延迟到了子类中。Factory模式也带来至少以下两个问题:1)如果为每一个具体的ConcreteProduct类的实例化提供一个函数体,那么我们可能不得不在系统中添加了一个方法来处理这个新建的ConcreteProduct,这样Factory的接口永远就不肯能封闭(Close)2)可以通过创建一个Factory的子类来通过多态实现这一点,但是这也是以新建一个类作为代价的。解决方法:通过参数化的工厂方法Factory模式仅仅局限于一类类(就是说Product是一类,有一个... 阅读全文
浙公网安备 33010602011771号