
设计模式
形形色色的人
这个作者很懒,什么都没留下…
展开
-
state Machine Demo
#include <stdlib.h> #include <stdio.h> #include <stdint.h> #include <glib.h> #include <unistd.h> using namespace std; typedef enum _EngineState { ENGINE_SERVER_STATE_NONE, ENGINE_SERVER_STATE_READY, ENGINE_SERV.原创 2020-10-20 17:19:38 · 154 阅读 · 0 评论 -
C++设计模式——装饰模式
// Decorator.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include using namespace std; class Component { public: virtual void Operation() = 0; }; class Concr原创 2016-08-16 15:13:36 · 286 阅读 · 0 评论 -
外观模式 Facade
外观模式是一种使用频率非常高的结构型设计模式,它通过引入一个外观角色来简化客户端与子系统之间的交互,为复杂的子系统调用提供一个统一的入口,降低子系统与客户端的耦合度,且客户端调用非常方便。 1. 外观模式概述 不知道大家有没有比较过自己泡茶和去茶馆喝茶的区别,如果是自己泡茶需要自行准备茶叶、茶具和开水,如图1(A)所示,而去茶馆喝茶,最简单的方式就是跟茶馆服务员说想要一杯什么转载 2016-08-30 15:36:55 · 260 阅读 · 0 评论 -
组合模式
package com.samsung.demo; import java.util.*; import org.junit.Test; abstract class iFile { int add(iFile i) { return 0; } int remove(iFile i) { return 0; } protected String name; publi原创 2016-09-09 15:00:30 · 190 阅读 · 0 评论 -
设计模式之责任链模式
#include using namespace std; class Handler { public: virtual void HandleRequest() = 0; void setNextHandler(Handler *nextHandler) { this->nextHandler=nextHandler; } prote原创 2016-03-29 10:21:13 · 284 阅读 · 0 评论 -
设计模式C++实现——简单工厂(并不在23种之中)
// 简单工厂_工厂方法_抽象工厂.cpp // #include "stdafx.h" #include using namespace std; class Fruit { public: Fruit() { printf("Fruit\n"); } virtual ~Fruit() { printf("~Fruit\n"); } }; class Banana原创 2015-09-13 21:06:33 · 476 阅读 · 1 评论 -
工厂方法
#include "stdafx.h" #include using namespace std; class Fruit { public: Fruit() { printf("Fruit\n"); } virtual ~Fruit() { printf("~Fruit\n"); } }; class Banana :public Fruit { public: Ba原创 2016-03-11 09:47:52 · 319 阅读 · 0 评论 -
设计模式C++实现(4)——饿汉懒汉之单例模式
转载出处 http://blog.youkuaiyun.com/wuzhekai1985 软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可复原创 2015-09-13 21:03:00 · 1548 阅读 · 4 评论 -
Command 模式
引言 提起Command模式,我想没有什么比遥控器的例子更能说明问题了,本文将通过它来一步步实现GOF的Command模式。 我们先看下这个遥控器程序的需求:假如我们需要为家里的电器设计一个远程遥控器,通过这个控制器,我们可以控制电器(诸如灯、风扇、空调等)的开关。我们的控制器上有一系列的按钮,分别对应家中的某个电器,当我们在遥控器上按下“On”时,电器打开;当我们按下“Off”时,电器关闭。转载 2015-11-19 15:59:22 · 430 阅读 · 0 评论 -
Template Method模式
在面向对象系统的分析与设计过程中经常会遇到这样一种情况:对于某一个业务逻辑(算法实现)在不同的对象中有不同的细节实现,但是逻辑(算法)的框架(或通用的应用算法)是相同的。Template Method提供了这种情况的一个实现框架。 Template Method模式是采用继承的方式实现这一点:将逻辑(算法)框架放在抽象基类中,并定义好细节的接口,子类中实现细节。 St转载 2015-11-06 15:50:38 · 405 阅读 · 0 评论 -
设计模式C++实现(10)——桥接模式
软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可复用面向对象软件的基础》两本书。本文介绍桥接模式的实现。 [DP]书上定义:转载 2015-09-14 16:06:58 · 573 阅读 · 1 评论 -
设计模式C++实现(5)——原型模式、模板方法模式
转载请标明出处 http://blog.youkuaiyun.com/wuzhekai1985 软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可复转载 2015-09-13 16:37:33 · 388 阅读 · 1 评论 -
设计模式C++实现(9)——享元模式
转载出处 http://blog.youkuaiyun.com/wuzhekai1985 软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模转载 2015-09-14 16:06:29 · 352 阅读 · 1 评论 -
设计模式C++实现(6)——建造者模式(Builder)
软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可复用面向对象软件的基础》(DP)两本书。本文介绍建造者模式的实现。 建造者模转载 2015-09-13 21:12:35 · 450 阅读 · 1 评论 -
设计模式C++实现(3)——适配器模式
转载出处 http://blog.youkuaiyun.com/wuzhekai1985 软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可转载 2015-09-13 21:04:06 · 477 阅读 · 1 评论 -
设计模式C++实现(2)——策略模式
转载出处 http://blog.youkuaiyun.com/wuzhekai1985 软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可转载 2015-09-13 21:05:24 · 430 阅读 · 1 评论