
设计模式
文章平均质量分 69
c++语言与java语言中设计模式的应用
phymat.nico
数学,物理,计算机
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
程序员锁死服务器致公司倒闭当事人逐条反驳:这锅我不背
https://blog.csdn.net/weixin_34200628/article/details/89149078原创 2020-10-09 10:32:06 · 223 阅读 · 0 评论 -
思考--为何早晨型人更容易成功
https://blog.csdn.net/zll_0405/article/details/78232358原创 2020-10-09 10:22:46 · 187 阅读 · 0 评论 -
记我经历的一次公司破产经历,一行代码害死一家公司
https://www.cnblogs.com/bianchengniuren/p/10281587.html原创 2020-10-09 10:11:10 · 260 阅读 · 0 评论 -
公司倒闭 1 年了,而我当年的项目上了 GitHub 热榜
https://blog.csdn.net/u012702547/article/details/95309609原创 2020-10-09 10:09:25 · 196 阅读 · 0 评论 -
设计模式-行为-迭代器
#pragma once#ifndef ITERATOR_H #define ITERATOR_H #include #include using namespace std;class Iterater; // 容器的抽象基类template class Aggregate { public: virtual ~Aggregate(){} virtual原创 2017-10-07 20:21:40 · 283 阅读 · 0 评论 -
设计模式-行为-中介者
#pragma once//#ifndef _COLLEAGE_H_//#define _COLLEAGE_H_#include using namespace std;class Mediator;class Colleage{public: virtual ~Colleage(); virtual void Aciton() = 0; virtual void Set原创 2017-10-07 20:23:26 · 317 阅读 · 0 评论 -
设计模式-行为-备忘录
#pragma once#ifndef MEMENTO_H #define MEMENTO_H #include typedef std::string State; class Memento; class Originator { public: Originator(const State& rState); Originator(); ~Origi原创 2017-10-07 20:25:14 · 308 阅读 · 0 评论 -
设计模式-行为-观察者
#pragma once#ifndef OBSERVER_H #define OBSERVER_H #include typedef int STATE; class Observer; //发布者// Subject 抽象基类,只需要知道Observer 基类的声明就可以了 class Subject { public: Subject() : m_nSubj原创 2017-10-07 20:27:47 · 360 阅读 · 0 评论 -
设计模式-行为-状态
#pragma once#ifndef STATE_H #define STATE_H class State; class Context { public: Context(State* pState); ~Context(); void Request(); void ChangeState(State *pState); private: Sta原创 2017-10-07 20:30:45 · 360 阅读 · 0 评论 -
设计模式-行为-策略
#pragma once#ifndef STRATEGY_H #define STRATEGY_H class Strategy; class Context { public: Context(Strategy *pStrategy); ~Context(); void ContextInterface(); private: Strategy* m_pS原创 2017-10-07 20:32:21 · 250 阅读 · 0 评论 -
设计模式-行为-模板方法
#pragma once// 抽象基类,定义 法的轮廓 class AbstractClass { public: AbstractClass(){} virtual ~AbstractClass(){} // 这个函数中定义了 法的轮廓 void TemplateMethod(); protected: // 纯虚函数,由派生类实现之 virtual vo原创 2017-10-07 20:33:29 · 257 阅读 · 0 评论 -
设计模式-行为-访问者
#pragma once#ifndef VISITOR_H #define VISITOR_H class Visitor; class Element { public: virtual ~Element(){} virtual void Accept(Visitor &rVisitor) = 0; protected: Element(){} }; cl原创 2017-10-07 20:36:14 · 339 阅读 · 0 评论 -
设计模式-创建型-抽象工厂
#pragma once#ifndef ABSTRACTFACTORY_H #define ABSTRACTFACTORY_H // 抽象基类AbstractProductA,代表产品A 的抽象 class AbstractProductA { public: AbstractProductA() {} virtual ~AbstractProductA(){}; };原创 2017-10-07 15:33:24 · 253 阅读 · 0 评论 -
设计模式-创建型-生成器
#pragma once#ifndef BUILDER_H #define BUILDER_H #include using namespace std;// 虚拟基类,是所有Builder的基类,提供不同部分的构建接口函数 class Builder { public: Builder(){}; virtual ~Builder(){} // 纯虚函数,提供构原创 2017-10-07 15:37:23 · 330 阅读 · 0 评论 -
设计模式-创建型-工厂方法
#pragma once#ifndef FACTORY_H #define FACTORY_H class Product { public: Product(){} virtual ~Product(){} }; class ConcreateProduct : public Product { public: ConcreateProduct(); v原创 2017-10-07 15:38:45 · 294 阅读 · 0 评论 -
设计模式-创建型-原型
#pragma once#include #include #include using namespace std;class cloneable{public: virtual cloneable* clone() = 0;};class work_experience:public cloneable{public: cloneable* clone() {原创 2017-10-07 15:41:40 · 321 阅读 · 0 评论 -
设计模式-创建型-单件
#pragma once#ifndef SINGLETON_H #define SINGLETON_H #include using namespace std;class Singleton { private: Singleton(){}; public: // 静态成员函数,提供全局访问的接口 static Singleton* GetInstancePtr()原创 2017-10-07 15:43:09 · 282 阅读 · 0 评论 -
设计模式-结构型-适配器
#pragma once#ifndef ADAPTER_H #define ADAPTER_H // 需要被Adapt 的类 class Target { public: Target(){} virtual ~Target() {} virtual void Request() = 0; }; // 与被Adapt 对象提供不兼容接口的类 class Ada原创 2017-10-07 15:46:08 · 295 阅读 · 0 评论 -
设计模式-结构型-桥接
#pragma once#ifndef BRIDEG_H #define BRIDEG_H class Implementor; // 维护一个Implementor 类的指针 class Abstraction { public: Abstraction(Implementor* pImplementor); virtual ~Abstraction(); vo原创 2017-10-07 15:47:39 · 315 阅读 · 0 评论 -
设计模式-结构型-组成
#pragma once#include // 组合中的抽象基类 class Component { public: Component(){} virtual ~Component(){} // 纯虚函数,只提供接口,没有默认的实现 virtual void Operation() = 0; // 虚函数,提供接口,有默认的实现就是什么都不做 virtu原创 2017-10-07 15:50:14 · 307 阅读 · 0 评论 -
设计模式-结构型-装饰
#pragma once#ifndef DECORATOR_H #define DECORATOR_H // 抽象基类,定义一个对象接口,可以为这个接口动态的添加职责. class Component { public: Component(){} virtual ~Component(){} // 纯虚函数,由派生类实现 virtual void Operat原创 2017-10-07 15:51:35 · 266 阅读 · 0 评论 -
设计模式-结构型-外观
#ifndef _FACADE_H_ #define _FACADE_H_#include "stdafx.h"class Subsystem1 {原创 2017-10-07 15:52:45 · 315 阅读 · 0 评论 -
设计模式-结构型-代理
#pragma once#ifndef PROXY_H #define PROXY_H // 定义了Proxy 和RealSubject 的公有接口, // 这样就可以在任何需要使用到RealSubject 的地方都使用Proxy. class Subject { public: Subject(){} virtual ~Subject(){} virtual v原创 2017-10-07 20:15:05 · 274 阅读 · 0 评论 -
设计模式-结构型-享元
#pragma once#ifndef FLYWEIGHT_H #define FLYWEIGHT_H #include #include typedef std::string STATE; class Flyweight { public: virtual ~Flyweight(){} STATE GetIntrinsicState(); virtua原创 2017-10-07 15:54:05 · 280 阅读 · 0 评论 -
设计模式-行为-职责链
#pragma once#ifndef CHAINOFRESPONSIBILITY_H #define CHAINOFRESPONSIBILITY_H #include // 抽象基类,定义一个处理请求的接口 class Handler { public: Handler(Handler *pSuccessor = NULL); virtual ~Handler()原创 2017-10-07 20:17:45 · 324 阅读 · 0 评论 -
设计模式-行为-命令
#pragma once#ifndef COMMAND_H #define COMMAND_H class Command { public: virtual ~Command() {} virtual void Execute() = 0; }; class Receiver { public: void Action(); }; class Invo原创 2017-10-07 20:19:06 · 299 阅读 · 0 评论 -
设计模式-行为-解释器
#pragma once#include using namespace std;class Context //表述内容{public: Context(); ~Context();protected:private:};class AbstractExpression //抽象表达式{public: virtual ~AbstractExpression();原创 2017-10-07 20:20:24 · 346 阅读 · 0 评论 -
谈谈设计模式
大家都知道,设计模式分3类23种,创建型5种,结构型7种,行为型11种。创建型,字面意思就是用于创建对象的,我们只要创建一个全局共享的对象,比如对模块接口的封装,那么就用单例模式;我们要创建很多个对象,就用工厂方法,一个具体的工厂接口创建对象;我们要创建一组相关的对象,就用抽象工厂,将创建各种对象的工厂抽象出来;我们要通过一个原型创建对象,并拷贝原型中的内容到新创建的对象中呢,那就用原型模式;原创 2017-05-06 16:42:55 · 674 阅读 · 0 评论