设计模式
文章平均质量分 83
lbqBraveheart
这个作者很懒,什么都没留下…
展开
-
设计模式之简单工厂
首先非常感谢睡仔:工厂模式,我的所有工厂模式的理解均来自于他的博客思想。simplefactory.h//设计模式之简单工厂模式/*简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例,由传入的参数决定创建那种类型的产品优点:1、解决了大量new的问题,2、通过在类的内部创建对象,通常比直接创建对象更加灵活缺点:对修改不封闭,增加新产品时需要修改工厂(sim原创 2011-12-07 15:10:46 · 803 阅读 · 0 评论 -
c++设计模式之代理模式
我的这篇博客的思想均来自于博客:那谁的技术博客,wang_gary。非常感谢他们带我进入代理模式。按照设计模式中介绍思路:意图:为其他对象提供一种代理以控制这个对象的访问。适用性:1、远程代理(remote proxy),为一个对象在不同的地址空间提供局部代理,2、虚代理(virtual proxy), 根据需要创建开销很大的对象3、保护代理(protection prox原创 2012-01-08 19:43:49 · 3861 阅读 · 2 评论 -
C++设计模式之适配器模式
按照设计模式书中介绍:意图:将一个类的接口转换成客户希望的另外一个接口。adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。适用性:当使用已经存在的一个类,而它的接口不符合你的需求时当想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类一起协同工作你想使用一些已经存在的子类,但是不可能对每一个都进行子类化以匹配他们的接口。参与者:T原创 2011-12-20 17:33:33 · 1308 阅读 · 0 评论 -
c++ 设计模式之原型模式
按照设计模式书上的介绍:意图: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。适用性: 当一个系统应该独立于他的产品创建、构成和表示时,需要使用原型模式 当要实例化的类是在运行时刻指定时,如通过动态装载 为了避免创建一个与产品类层次平行的工厂类层次时 当一个类的实例只能有几个不同状态组原创 2011-12-20 12:12:01 · 7585 阅读 · 2 评论 -
c++ 设计模式之创建者(生成器)模式
个人感觉这个模式,使用的应该较少,主要应用于流程性的东西,创建者负责构建一个对象的各个部分,并且完成组装的过程,可以这么理解,创建者模式类似与一个步骤基本固定,但是每个步骤的具体形式却又可以变化的这类对象的创建。废话不多说了,进入我们的创建者模式。意图:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。适用性:1、当创建复杂对象的算法应该独立于该对象的组成部原创 2011-12-19 12:30:31 · 3124 阅读 · 0 评论 -
c++ 设计模式之单件模式
单件模式应该是所有设计模式中最简单的一个了,但是如果使用不当会出现很多问题,下面我们就分析一下单件模式作用:保证一个class只有一个实体(instance),并为它提供一个全局唯一的访问点 适用性:1、对于一个类(对象),如果它比较大(占用的系统资源非常多),而且这些资源可以被全局共享,则可以设计为singleton模式。2、对于一个类,需要对实例进行计数。可以在Instance原创 2011-12-19 18:04:07 · 11364 阅读 · 1 评论 -
设计模式之建造者模型
首先看一个比较通用的模型例子:builder.h//设计模式之builder模式/*作用:将一个复杂对象的构建与它的表示分离,使同样的构建过程创建不同的表示*///虚拟基类,所有builder的基类,提供不同部分的构建接口class builder{public: builder(){}; virtual ~builder(){}; //提供构建原创 2011-12-07 17:47:47 · 976 阅读 · 0 评论 -
设计模式之工厂方法
首先非常感谢睡仔:工厂模式,我的所有工厂模式的理解均来自于他的博客思想。factory.h//设计模式之工厂方法,此方式是在product基础上对factory进一步抽象的结果/*优点:1、解决了大量new的问题,2、通过在类的内部创建对象,通常比直接创建对象更加灵活3、当系统增加产品时,新增一个产品工厂即可,对抽象工厂不受影响缺点:对创建不同系列的产品无能为力原创 2011-12-07 15:21:47 · 791 阅读 · 0 评论 -
设计模式之抽象工厂
首先非常感谢睡仔:工厂模式,我的所有工厂模式的理解均来自于他的博客思想。abstractfactory.h//设计模式之抽象工厂,此方式是在工厂方法的基础上进一步抽象的结果/*理解: 世事多变,随着时间的推移,走过的地方越来越多,你天南海北的朋友也越来越多。你发现菜原来还分了许多菜系,鲁菜、粤菜、湘菜等等,它们各有各的风味,同样是红烧肉由不同菜系出来的味道也各不相同,原创 2011-12-07 15:24:24 · 766 阅读 · 0 评论 -
设计模式之迭代器模式
转自:http://www.cnblogs.com/wanggary/archive/2011/04/19/2021600.html概念:提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的内部表示。main(),客户IProject,产品接口CProject,产品类IIterator,迭代器接口IProjectIterator,产品迭代器接口CProjec转载 2012-01-10 22:51:04 · 827 阅读 · 0 评论