设计模式
文章平均质量分 73
Tony_Wong
这个作者很懒,什么都没留下…
展开
-
中介者模式(Mediator)
1.目的当两个或多个对象之间要建立关联的时候,可以ran原创 2014-09-16 07:11:53 · 506 阅读 · 0 评论 -
命令模式(Command)
1.目的 将原创 2014-09-13 16:21:36 · 377 阅读 · 0 评论 -
模板方法模式(Template Method)
1.目的 将公共的方法提到父类,并提出接口,由子类实现,原创 2014-09-24 10:07:42 · 481 阅读 · 0 评论 -
迭代器模式(Iterator)
1.目的 当需要遍历(单种方式)原创 2014-09-24 17:04:13 · 495 阅读 · 0 评论 -
装饰者模式(Decorator)
1.目的 当我们要增加一个类的功能时,我们可以直接给这个类增加方法,可以给这个类的父类增加方法,原创 2014-09-15 16:07:17 · 447 阅读 · 0 评论 -
代理模式(Proxy)
1. 目的 当不希望客户原创 2014-09-15 16:30:21 · 422 阅读 · 0 评论 -
TemplateMethod和Strategy模式的区别(实例)
本例取自《敏捷软件开发》地14章,分别使用TemplateMethod和Strategy模式来实现BubbleSort使用TemplateMethod实现的版本#include using namespace std;templateint getLenOfArray(T& arg){ return sizeof(arg)/sizeof(arg[0]);}c原创 2014-09-26 17:38:16 · 584 阅读 · 0 评论 -
Command模式&Active Object模式
本例取自《敏捷软件开发》第13章原创 2014-09-26 15:18:57 · 863 阅读 · 0 评论 -
Modem:Adapter模式与Bridge模式
本例取自《敏捷软件开发》第25章,使用C++实现1.背景原创 2014-09-25 15:27:11 · 1172 阅读 · 0 评论 -
备忘录模式(Memento)
1.目的 如果某个对象,需要原创 2014-09-13 14:30:27 · 492 阅读 · 0 评论 -
原型模式(ProtoType)
1.目的 当需要从一个对象copy出另外一个对象时,可以使用原型模式,原创 2014-09-23 18:34:57 · 562 阅读 · 0 评论 -
State模式与Strategy模式的区别
策略用来处理算法方式变化,而状态则是处理状态变化。 对于模式的选择反映出你对结构的想法。此刻你把它视为一种状态,如果将来你发觉用Strategy能更好的说明你的意图,你可以重构它。这两种模式在结构上是相似,都是通过继承来实现的。所以如果重构变化会很小的。这两种模式之间有时候没有区别,譬如在面向连结的TCPConnection例子中,不同的状态可能具有不同的方法。但是在刚刚实现的一个无连转载 2014-09-07 21:49:14 · 1162 阅读 · 0 评论 -
建造者模式(builder)
1.目的 当原创 2014-09-20 15:24:15 · 609 阅读 · 0 评论 -
组合模式(Composite)
1.目的 有的需要将对象组织成树形原创 2014-09-20 16:13:44 · 447 阅读 · 0 评论 -
外观模式(Facade)
1.目的 一个子系统会包含各种各样,可以实现各种不同功能的对象,原创 2014-09-20 11:24:22 · 452 阅读 · 0 评论 -
策略模式和状态模式的区别2
状态模式(state pattern)和策略模式(strategy pattern)的实现方法非常类似,都是利用多态把一些操作分配到一组相关的简单的类中,因此很多人认为这两种模式实际上是相同的。然而在现实世界中,策略(如促销一种商品的策略)和状态(如同一个按钮来控制一个电梯的状态,又如手机界面中一个按钮来控制手机)是两种完全不同的思想。当我们对状态和策略进行建模时,这种差异会导致完全不同的转载 2014-09-08 20:44:44 · 628 阅读 · 0 评论 -
各种知识图
http://www.cnblogs.com/Mainz/archive/2012/09/08/2676618.html转载 2014-09-08 20:52:46 · 420 阅读 · 0 评论 -
观察者模式
V0.1 传统方式class StockTeammate{public: StockTeammate(std::string arg, Secretary& sec); void update();private: std::string name;};class Secretary{public: void add(StockTeammate& s); void原创 2014-06-27 14:59:06 · 465 阅读 · 0 评论 -
观察者模式(Observer)
#ifndef OBSERVER_H_#define OBSERVER_H_#include class Subject;class Observer{public: Observer(Subject* = NULL); virtual ~Observer() {} virtual void update() const = 0;protected: Subject*原创 2014-09-08 22:10:29 · 411 阅读 · 0 评论 -
职责链模式(ChainOfResponsibity)
1.目的 对于某个请求()原创 2014-09-13 17:26:59 · 398 阅读 · 0 评论 -
适配器模式(Adapter)
1.目的 某个对象有一个接口()原创 2014-09-15 17:37:31 · 379 阅读 · 0 评论