AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向切面编程。可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也...
分类:
编程语言 时间:
2015-05-22 17:01:39
阅读次数:
142
什么是AOP?AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向方面编程。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。为什么使用AOP?将通用需求功能从不相关类之中分离出来;同...
分类:
其他好文 时间:
2015-05-21 18:59:29
阅读次数:
136
1. 简单工厂又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得Bean对象,但...
分类:
编程语言 时间:
2015-05-17 23:09:15
阅读次数:
118
设计模式之于面向对象系统的设计和开发的作用就有如数据结构之于面向过程开发的作用一般。
面向对象系统的分析和设计实际上追求的就是两点,一是高内聚,二是低耦合。这也是我们软件设计所准求的,因此无论是OO中的封装、继承、多台,还是我们的设计模式的原则和实例都是在为了这两个目标努力着、贡献着。
1.创建型模式
1.1 Factory模式
1.1.1模...
分类:
其他好文 时间:
2015-05-11 20:10:37
阅读次数:
189
Design Pattern:Elements of Reusable Object-Oriented Software(又被称为设计模式圣经),收录了23种设计模式,并将它们归纳为三组:创建型模式:Factory Method(工厂方法)模式、Abstract Factory(抽象工厂)模式、Bu...
分类:
其他好文 时间:
2015-05-07 20:11:13
阅读次数:
130
一、描述
单例模式就是确保一个类只有一个实例对象,并且在实例对象必须自动创建,对外不提供该对象的构造方法,并向整个系统提供该实例。使用单例模式相当于整个系统共用该类的实例对象,对于java中的并发访问有重要意义。
单例模式又分为饿汉模式和饱汉模式两种,饿汉模式就是在类加载的时候就创建和初始化该类的唯一的实例对象,而饱汉模式是系统需要用到这个类的实例的时候才创建该对象。
二、单例模式的...
分类:
编程语言 时间:
2015-05-02 15:11:32
阅读次数:
153
1、简单工厂模式
简单工厂模式是属于创建型模式,又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。
工厂(Creator)角色
简单工厂模式的核心,它负责实现创建所有...
分类:
其他好文 时间:
2015-05-02 11:18:13
阅读次数:
183
一、描述
原型模式是通过一个原型对象来标明要创建的对象的类型,然后用复制这个原型对象的方法来拷贝创建更多的同类型对象。例如我们在程序的动态运行过程中有了一个对象,这个对象中包含了一系列的有效数据,我们此时需要一个和该对象完全相同的新对象,并且在拷贝之后,新旧对象之间没有任何联系,对任何一个对象的更改都不影响另一个对象。
在java中所有类都默认继承自java.lang.Object类,在这个O...
分类:
编程语言 时间:
2015-05-01 22:37:46
阅读次数:
208
一、描述
创建者模式单独利用一个创建者类来创建对象并组建对象之间的关系,以简化客户端调用的复杂性。相对于抽象方法模式来说,创建者模式增加了一个单独的用于组装对象和对象之间关系的创建者类,由该类来负责对象的组装,以此来更加清晰地划分各个类的职责。
创建者模式将一个复杂对象的构建和它的表示分离,使得同样的构建过程可以创建不同的表示,而且对客户端屏蔽了对象的构建细节,该模式主要由5个部分组成:组装类...
分类:
编程语言 时间:
2015-05-01 17:25:31
阅读次数:
190
一、描述
抽象工厂模式是在工厂方法的模式上进一步抽象而来,如果说工厂方法模式是对一个产品结构的创建而言的话,那么抽象工厂模式则是针对多个产品结构而言的,它被用来一次创建多个不同的产品对象。
我们要创建一个摩托车轮胎和摩托车把手,又要创建一个自行车轮胎和自行车把手,如果我们使用工厂方法模式的话我们需要四个类:创建摩托车轮胎的工厂类,创建摩托车把手的工厂类,创建自行车轮胎的工厂类和创建自行车把手的...
分类:
编程语言 时间:
2015-05-01 12:04:09
阅读次数:
156