12 2012 档案
摘要:Decorator,装饰模式 就是使“对象功能的扩展”能够根据需要来动态地实现,同时可以避免“扩展功能的增多”导致子类数量急剧增多,从而使得任何“功能扩展变化”所产生的负面影响降为最低。 Decorator提供了一种给类增加职责的方法,不是通过继承实现,而是组合。 举例,一辆汽车 ...
阅读全文
摘要:composite pattern称为组合模式 在面向对象的系统中,我们经常会遇到一类具有"容器"特征的对象,即它们在充当对象的同时,又是其他对象的容器。 “Compose objects into tree structures to represent part-whole hierar...
阅读全文
摘要:Bridge模式又称为Handle/Body模式。 在软件系统中,经常面临着“某些结构复杂的对象”的创建工作,由于需求的变化,这些对象经常面临着剧烈的变化,但是他们却拥有比较稳定一致的接口。大部分创建型模式,就是为了解决如何向“客户程序”隔离出“这些易变对象”,从而使得“依赖这些易变对象的客户程序...
阅读全文
摘要:adapter pattern,又称wrapper(包装) pattern 在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的。Adapter设计模式就是为了应对这种“迁移的变化”,以使客户系统既能利用现有对象的良好实现...
阅读全文
摘要:prototype pattern称为原型模式 在软件系统中,经常面临着“某些结构复杂的对象”的创建工作,由于需求的变化,这些对象经常面临着剧烈的变化,但是他们却拥有比较稳定一致的接口。Prototype设计模式,就是为了解决如何向“客户程序”隔离出“这些易变对象”,从而使得“依赖这些易变对象的...
阅读全文
摘要:buildre pattern称建造者模式 Builder设计模式,提供一种封装机制来隔离出构成复杂对象的各个子对象的变化,从而保持系统中的相对稳定的将这些子对象组合在一起的算法不随着需求的改变而改变。 Separate the construction of a complex obje...
阅读全文
摘要:abstract factory pattern,抽象工厂模式 抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。 Abstract Factory模式存在的意义就是为了创建各系列的对象而存在的。相对Factory Method模式的解决“单个对象”的需求变化,Abstra...
阅读全文
摘要:factory mothed pattern,称工厂方法模式 首先我们看看Gof怎么定义工厂方法模式的: “Define an interface for creating an object, but let subclasses decide which class to instantiate...
阅读全文
摘要:singleton pattern,又称单件模式,或者单例模式。singleton要求类有且仅有一个实例,并给其他对象提供这一实例。 控制类实例仅有一个,办法有两个: 1.私有化构造函数与copy构造函数,使用一个函数静态变量 1 #include 2 class People{ 3 ...
阅读全文
摘要:大家可能对这个临时对象这个概念还不是很清楚,那么首先我们花一些时间来理解临时对象。首先看下面一端代码: 1 #include 2 void swap( int &a,int &b) 3 { 4 int temp; 5 temp=a; 6 a=b; 7 b=t...
阅读全文