C++ 设计模式
设计模式代表了最佳的实践,在面向对象的编程中被很多老鸟们反复使用。《设计模式》之于程序员,就好比《圣经》之于耶稣信徒一样。要真正领悟设计模式的精髓,需要有大量实践经验的积累,这往往是一个漫长的过程。
-
原
C++ 享元模式
简述 享元模式(Flyweight Pattern)运用共享技术有效地支持大量细粒度对象的复用。系统只使用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用。 简述 模式结构 优缺点 适用场景 案例分析 内部状态和外部状态 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 U...2018-03-20 18:23:26 阅读数:2598 评论数:11 -
原
C++ 桥接模式
简述 桥接模式(Bridge Pattern)是将抽象部分与它的实现部分分离,使它们都可以独立地变化。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: Abstraction(抽象类):用于定义抽象类的接口,并且维护一个指向...2018-03-13 18:09:31 阅读数:3496 评论数:3 -
原
C++ 模版方法模式
简述 模版方法模式(Template Method Pattern)定义一个操作中算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML...2018-02-28 18:04:59 阅读数:1971 评论数:9 -
原
C++ 访问者模式
简述 访问者模式(Visitor Pattern)表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: Vistor(访问...2018-02-24 18:06:16 阅读数:1935 评论数:0 -
原
C++ 备忘录模式
简述 备忘录模式(Memento Pattern)在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: Ori...2018-02-09 09:33:41 阅读数:1412 评论数:1 -
原
C++ 中介者模式
简述 中介者模式(Mediator Pattern)用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: ...2018-02-02 19:06:13 阅读数:1493 评论数:1 -
原
C++ 策略模式
简述 策略模式(Strategy Pattern)定义一系列算法,把它们一个个封装起来,并且使它们可以互相替换。Strategy 可以使算法独立于使用算法的客户端。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: Cont...2018-02-09 09:50:26 阅读数:2121 评论数:6 -
原
C++ 职责链模式
简述 职责链模式(Chain of Responsibility Pattern)使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang1989...2018-01-16 18:06:03 阅读数:1407 评论数:2 -
原
C++ 状态模式
简述 状态模式(State Pattern)是行为设计模式之一。当对象根据其内部状态改变其行为时,将使用状态设计模式。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: Context(上下文):定义一个与 Client 交...2017-11-27 18:03:07 阅读数:2898 评论数:1 -
原
C++ 代理模式
简述 代理模式(Proxy Pattern)为其他对象提供了一种代理,以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构...2017-11-14 17:50:43 阅读数:3281 评论数:4 -
原
C++ 组合模式
简述 组合模式(Composite Pattern)组合多个对象形成树形结构以表示具有“整体-部分”关系的层次结构。组合模式对单个对象(即:叶子构件)和组合对象(即:容器构件)的使用具有一致性,组合模式又被称为“整体-部分”(Part-Whole)模式,属于对象结构型模式。 简述 模式结构 透明组合模式和安全组合模式 优缺点 适用场景 案例分析 代码实现 透明组合模式 安全组合模式 ...2017-05-05 20:01:41 阅读数:4640 评论数:9 -
原
C++ 外观模式
简述 外观模式(Facade Pattern)又称为门面模式,属于结构型模式。Façade 为子系统中的一组接口提供了一个统一的高层接口,该接口使得子系统更加容易使用。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: Fa...2017-04-27 12:59:21 阅读数:2630 评论数:2 -
原
C++ 抽象工厂模式
简述 抽象工厂模式(Abstract Factory Pattern)是所有形态的工厂模式中最为抽象和最具一般性的一种形态。抽象工厂模式是指当有多个抽象角色时,使用的一种工厂模式。抽象工厂模式可以向客户端提供一个接口,使客户端在不必指定产品的具体的情况下,创建多个产品族中的产品对象。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:h...2017-04-24 19:45:02 阅读数:6243 评论数:2 -
原
C++ 工厂方法模式
简述 工厂方法模式(Factory Method Pattern)是一种常用的对象创建型设计模式,此模式的核心思想是封装类中不变的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦、复用以及方便后期维护拓展的目的。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang1989...2017-04-24 19:29:39 阅读数:5568 评论数:2 -
原
C++ 简单工厂模式
简单工厂模式(Simple Factory Pattern)又叫做静态工厂方法模式(Static Factory Method Pattern),属于创建型模式。简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类的实例。 值得注意的是,简单工厂模式并不属于 23 种 GoF 设计模式之一。它是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。2017-04-24 19:18:17 阅读数:3376 评论数:4 -
原
C++ 装饰者模式
简述 装饰者模式(Decorator Pattern)是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: ...2017-03-27 17:22:00 阅读数:4119 评论数:7 -
原
C++ 适配器模式
简述 适配器模式(Adapter Pattern)是一种补救模式,将一个类的接口转换成客户希望的另外一个接口,从而使原本由于接口不兼容而不能一起工作的类可以一起工作。 简述 模式结构 类适配器和对象适配器 优缺点 适用场景 案例分析 代码实现 对象适配器 类适配器 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 ...2017-03-27 16:44:21 阅读数:4243 评论数:12 -
原
C++ 原型模式
简述 原型模式(Prototype Pattern)是一种创建型设计模式,允许一个对象再创建另外一个可定制的对象,而无需知道任何创建的细节。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: Prototype(抽象原型):...2017-03-27 11:39:14 阅读数:3761 评论数:3 -
原
C++ 建造者模式
简述 建造者模式(Builder Pattern),旨在将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 简述 模式结构 优缺点 适用场景 案例分析 代码实现 版权所有:一去丶二三里,转载请注明出处:http://blog.csdn.net/liang19890820 模式结构 UML 结构图: Builder(抽象建造者):为创建一个产...2017-03-27 11:31:57 阅读数:6037 评论数:4 -
原
C++ 命令模式
命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传递给调用对象。调用对象寻找可以处理该命令的合适对象,并把该命令传给相应的对象,该对象执行命令。2017-03-14 22:17:41 阅读数:4107 评论数:3