11 2010 档案

摘要:作用:将抽象部分与它的实现部分分离,使它们都可以独立地变化。Bridge模式中存在三个核心概念:  1.抽象层:对实现层的上层处理或者上层调用。  2.实现层:对抽象层的处理或者调用,施以回应。具体实现抽象层的各种方法。  3.脱耦  实际上,Bridge就是通过抽象层与实现层的分离,来实现脱耦的目的的。UML结构图:左边为抽象层,右边为实现层。他们之间的“复合”关系即为B... 阅读全文
posted @ 2010-11-29 09:31 忧郁的加菲猫 阅读(639) 评论(0) 推荐(0) 编辑
摘要:作用:将一个类的接口转换成客户希望的另外一个接口。Adapt 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。UML示意图1)采用继承原有接口类的方式2)采用组合原有接口类的方式解析:Adapt模式其实就是把完成同样的一个功能但是接口不能兼容的类桥接在一起使之可以在一起工作,这个模式使得复用旧的接口成为可能.实现:Adapt模式有两种实现办法,一种是采用继承原有接口类的方法,一种是采... 阅读全文
posted @ 2010-11-27 20:13 忧郁的加菲猫 阅读(1315) 评论(0) 推荐(0) 编辑
摘要:作用:保证一个类仅有一个实例,并提供一个访问它的全局访问点。UML结构图:解析: Singleton模式其实是对全局静态变量的一个取代策略,上面提到的Singleton模式的两个作用在C++中是通过如下的机制实现的: 1)仅有一个实例,提供一个类的静态成员变量,大家知道类的静态成员变量对于一个类的所有对象而言是惟一的 2)提供一个访问它的全局访问点,也就是提供对应的访问这个静态成员变量的静态成员... 阅读全文
posted @ 2010-11-27 16:40 忧郁的加菲猫 阅读(530) 评论(0) 推荐(0) 编辑
摘要:作用: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。UML结构图: 抽象基类: 1)Prototype:虚拟基类,所有原型的基类,提供Clone接口函数接口函数: 1)Prototype::Clone函数:纯虚函数,根据不同的派生类来实例化创建对象.解析: Prototype模式其实就是常说的"虚拟构造函数"一个实现,C++的实现机制中并没有支持这个特性,但是通过不同派生类实现... 阅读全文
posted @ 2010-11-27 16:10 忧郁的加菲猫 阅读(315) 评论(0) 推荐(0) 编辑
摘要:Builder模式(建造者模式):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。适用于以下情况: 1、当创建复杂对象算法应该独立于该对象的组成部分以及它们的装配方式时。 2、当构造过程必须允许被构造的对象有不同的表示时。uml图抽象基类: 1)Builder:这个基类是全部创建对象过程的抽象,提供构建不同组成部分的接口函数接口: 1)Builder::BuildPart... 阅读全文
posted @ 2010-11-27 16:10 忧郁的加菲猫 阅读(1479) 评论(0) 推荐(0) 编辑
摘要:Abstract Factory模式(抽象工厂模式):提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。Abstract Factory模式和Factory最大的差别就是抽象工厂创建的是一系列相关的对象,其中创建的实现其实采用的就是Factory模式的方法,对于某个实现的有一个派生出来的抽象工厂,另一个实现有另一个派生出来的工厂。uml图抽象基类:  1)ProductA,Pro... 阅读全文
posted @ 2010-11-27 16:10 忧郁的加菲猫 阅读(466) 评论(0) 推荐(0) 编辑
摘要:Factory模式(工厂模式):定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory模式使一个类的实例化延迟到其子类。两个最重要的功能:  1. 定义创建对象的接口,封装了对象的创建;  2. 使得具体化类的工作延迟到了子类中。uml图抽象基类:  1)Product:创建出来的对象的抽象基类.  2)Factory创建对象的工厂方法的抽象基类.接口函数:  1)Creator::... 阅读全文
posted @ 2010-11-27 16:09 忧郁的加菲猫 阅读(802) 评论(0) 推荐(0) 编辑