设计模式
文章平均质量分 79
知也无涯12345
这个作者很懒,什么都没留下…
展开
-
23种设计模式之五种创建型模式
创建型模式(Creational Patterns) 用于构建对象,以便它们可以从实现系统中分离出来。 结构型模式(Structural Patterns) 用于在许多不同的对象之间形成大型对象结构。 行为型模式(Behavioral Patterns) 用于管理对象之间的算法、关系和职责。 目录第一部分:创建型模式1. Factory模式a. 问题b. 结构示意图c. 代码实例c. 代码实例...原创 2020-03-07 13:48:48 · 354 阅读 · 0 评论 -
23种设计模式之十一种行为模式
目录第三部分:行为模式1. Template模式a)结构图b)实例c)讨论2. Strategy模式a)结构图b)实例c)讨论3. State模式a)结构图b)实例c)讨论4. Observer模式a)结构图 第三部分:行为模式 1. Template模式 a)结构图 算法实现在不同的对象中有不同的细节实现,但是逻辑(算法)的框架(或通用的应用算法)是相同的。Template提供了这种情况的一个实...原创 2020-03-05 13:13:20 · 262 阅读 · 0 评论 -
23种设计模式之七种结构型模式
目录第二部分:结构型模式1. Decorator模式2. 代码实现4. 优缺点 后面的模式内容代码是参考其他博客的,版权原因就不公开了哈,自己没事看看 第二部分:结构型模式 1. Decorator模式 Decorator提供了一种给类增加职责的方法,不是通过继承实现的,而是通过组合。 在结构图中,ConcreteComponent和Decorator需要有同样的接口,因此ConcreteCom...原创 2020-03-04 12:02:26 · 433 阅读 · 0 评论 -
23种设计模式之Composite模式
目录第二部分:结构型模式1. Composite模式2. 结构图3. 实例 第二部分:结构型模式 1. Composite模式 在开发中,我们经常可能要递归构建树状的组合结构,Composite模式则提供了很好的解决方案。 2. 结构图 3. 实例 client #include "composite.h" #include "leaf.h" int main() { // 创建一个树形结构...原创 2020-03-03 17:54:01 · 275 阅读 · 0 评论 -
23种设计模式之Bridge模式(六)
目录第一部分:结构型模式1. Bridge模式a. 问题b.结构图c. 代码实现d. 优缺点 第一部分:结构型模式 1. Bridge模式 a. 问题 将抽象部分与实现部分分离,使他们都可以独立的发生变化 b.结构图 Abstraction(抽象类):里面包含 Implementor 实现类的指针,如开关,里面有一个指向电器的指针 RefinedAbstraction(扩充抽象类):具体的开关,...原创 2019-11-25 11:40:51 · 129 阅读 · 0 评论 -
23种设计模式之Prototype模式(五)
目录第一部分:创建型模式5. Prototype模式a. 问题b. 模式结构c.代码实现d.优缺点 第一部分:创建型模式 5. Prototype模式 a. 问题 原型模式:提供了自我复制的功能,就是说新对象的创建可以通过已有对象进行创建。 b. 模式结构 提供了一个通过已存在对象进行新对象创建的接口(Clone),Clone()实现和具体的实现语言相关,在C++中我们将通过拷贝构造函数实现。 ...原创 2019-11-17 11:22:30 · 138 阅读 · 0 评论 -
23种设计模式之Builder模式(四)
第三天啦,今天看一下builder模式,说实话,这篇博客https://blog.csdn.net/liang19890820/article/details/66968761写的很清晰,举的例子也很容易理解,用的就是这篇博客举得例子,比书上给的例子更容易理解。 目录第一部分:创建型模式4. Builder模式a. 问题b. 模式框图c. 代码实现d. 优缺点 第一部分:创建型模式 4. Buil...原创 2019-11-17 09:14:19 · 186 阅读 · 0 评论 -
23种设计模式之Singleton模式(三)
往下看了一下,发现单例模式很好理解,直接一起写了吧!HAHAHA 目录第一部分:创建型模式3. Singleton模式a. 问题b.基本思想c.代码实现d.使用场景 第一部分:创建型模式 3. Singleton模式 a. 问题 这个对象(类)只能有一个实例,C++(面向对象和面向过程的结合)的话可以通过设置一个全局变量来实现,如果时纯面向对象的Java,就需要Singleton模式来实现了(不会...原创 2019-11-16 13:10:19 · 97 阅读 · 0 评论 -
23种设计模式之AbstactFactory模式(二)
第二天啦,今天看一下AbstactFactory模式,参考https://blog.csdn.net/liang19890820/article/details/70653800这个博客和设计模式精解-GoF 23种设计模式解析附C++实现源码(结构示意图来自这里)。 目录第一部分:创建型模式1. Factory模式a. 问题b. 结构示意图c.代码实现d.优缺点 第一部分:创建型模式 1. Fa...原创 2019-11-16 12:28:23 · 143 阅读 · 0 评论 -
23种设计模式之Factory模式(一)
最近写大论文实在无聊,所以决定每天闲暇时学习一种设计模式,主要参考:设计模式:可复用面向对象的软件基础一书、设计模式精解-GoF23种设计模式解析附C++实现源码,还有https://blog.csdn.net/u011012932/article/category/6783147的博客(很多图是来自这里)。还是一样,边学边整理,方便日后查看。 目录创建型模式1. Factory模式问题结构示意图...原创 2019-11-15 16:51:54 · 550 阅读 · 0 评论