设计模式
孟建行
技术文章分享。
展开
-
Bridge模式
假设我们要开发一套UI控件库,所有的UI控件都派生于Windows接口,假设控件有100个,而且我们的目标是UI控件库可以跨Widows,Linux,Unix,那么我们该怎么做呢? 第一种做法,我们把每个UI控件都实现3遍,分别对应3个平台Linux、Windows、Unix,那么我们一共需要实现300次,非常麻烦,那么是否有更好的方法呢?有,这就是桥模式。 第二种方法:桥模式 我们首先定义1个Window接口,然后把所有UI控件需要的基本操作定义在Window中,然后再让所有的UI控件都继承WInd原创 2020-05-09 14:53:46 · 195 阅读 · 0 评论 -
PROTOTYPE模式难点解析
这个模式在C++中什么时候才会使用,为什么不直接new,大家只要明白一个场景,就会知道它的用处。 比如,现在让你设计一个游戏,一共有8个关卡,每关的小兵有四种,但是第一关的小兵最弱,第八关的小兵最强,你怎么设计? 你可能认为这还不简单,需要小兵的时候,直接new一个相应的小兵,就可以了。但是这样做会遇见一个问题,比如第一关的小兵和最后一关的小兵,他们的属性肯定不一样,因此,如果直接new,导致...原创 2020-05-06 13:59:30 · 250 阅读 · 0 评论 -
Factory Method 模式难点解析
首先大家要知道什么是框架,为什么使用框架,明白了这个后,大家就知道Factory Method诞生的原因了。 什么是框架? 1 、是一组相关类的集合。 2、具有通用性。 3、是半成品。 我们为什么使用框架? 因为框架是半成品,所以我们使用框架可以降低我们的开发成本,提升开发效率。 Factory Method诞生的原因 假如我们要开发一个框架,因为框架具有通用性,半成品的特点,所以...原创 2020-05-04 20:23:30 · 216 阅读 · 0 评论 -
Builder模式
许多同学反映GOF设计模式看不懂,我认为主要两点原因: 1、你的工作经验太少,或者根本就没有经验。 2、GOF举得的例子,你认为不好理解,我个人也认为GOF举得例子并不是很恰当。 我本来想写代码,但是最后还是决定不写了,因为我认为这个代码并不难,关键是明白Builder模式到底讲的是什么,这才是关键,如果大家明白了Builder模式的本质,代码自己就可以写出来。 好了,废话不多说,我们言归...原创 2020-05-03 17:34:30 · 194 阅读 · 0 评论 -
Abstract Factory模式
// AbstractFactory.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" //主板 class CMainBoard { public: //显示主板信息 virtual void Print() = 0; }; //华硕主板 class CAsusBoard :public CMainBoard { public: void Pr...原创 2020-05-01 16:58:55 · 234 阅读 · 0 评论 -
什么是设计模式-我看GOF
市面上关于设计模式的书籍很多,原创 2014-11-16 16:44:49 · 749 阅读 · 0 评论