摘要: *将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。*其意思就是说:我们需要一种方法,可以提供接口,让内容合适但接口不匹配的对象同样可以被利用。*意图是:将一个无法控制的现有的对象与一个特定接口相匹配。*实现的方法可以是: 将现存的类包含在另一个类之中。包容类与需要的接口相匹配,并调用被包容类的方法。*Adapter有两种类型:对象Adapter模式:依赖于一个对象(适配对象)包含另一个对象(被适配对象)和类Adapter模式:使用多重继承。Facade模式和Adapter的模式的比较:1在两个模式中,都拥有现存类。2在Fa 阅读全文
posted @ 2012-05-30 00:29 xyecho 阅读(1374) 评论(3) 推荐(1) 编辑
摘要: * 为了子系统中的一组接口提供一个一致的界面。Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。* 其应用场景就是我们所遇到的问题中我只需要用这个系统的一个子集。* 也能理解为对一个系统一个封装,对访问者隐藏复杂的逻辑,开放一些必需的的接口。*有一个原则: 通常它比原始系统的API简单得多。*希望包装或隐藏所有的系统。Facade模式的模型A系统有A1,A2,A3等类。客户端需要调用A系统的的A1.doSomething1();A2.doSomething2();A3.doSomething3()来完成某功能。Facade模式的实现模型就是:A系统:classA1{pub 阅读全文
posted @ 2012-05-30 00:21 xyecho 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 保证一个类只能有一个实例,并提供一个访问它的负局访问点。Singleton模式的工作方式是:拥有一个特定的方法,这个方法被手于实例化需要的对象。* 当这个方法被调用时,它检查了这个对象是否已经被 实例化。如果对象已经被实例化,这个方法仅仅返回这个对象的一个引用。如果对象尚未实例化,这个方法交对象实例化返回这个新的实例的引用。*为了确保这是创建这个类型的对象的惟一途径,一般都是当构造函数定义为protected 或 private.网上的代码:#include<iostream>using namespace std;class Singleton{public: static Si 阅读全文
posted @ 2012-05-30 00:16 xyecho 阅读(354) 评论(0) 推荐(1) 编辑