![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 67
咚伢
linux C
展开
-
快速入门设计模式Ⅲ—单例模式
单例模式 定义 保证⼀个类仅有⼀个实例,并提供⼀个该实例的全局访问点。 下面从几个单例模式的实现版本和大家探讨单例模式的实现 版本一 // 内存栈区 // 内存堆区 // 常数区 // 静态区 系统释放 // ⼆进制代码区 class Singleton { public: static Singleton * GetInstance() { if (_instance == nullptr) { _instance = new Singleton(); } return原创 2021-05-26 20:47:55 · 72 阅读 · 0 评论 -
快速入门设计模式Ⅱ—策略,代理,责任链,装饰器,工厂模式
策略模式 定义 定义⼀系列算法,把它们⼀个个封装起来,并且使它们可互相替换。该模式使得算法可独⽴于使⽤ 它的客户程序⽽变化。 要点 策略模式提供了⼀系列可重⽤的算法,从⽽可以使得类型在运⾏时⽅便地根据需要在各个算法 之间进⾏切换; 策略模式消除了条件判断语句;就是在解耦合; 充分体现了开闭原则,单⼀职责; 本质 分离算法,选择实现; 例子 某商场节假⽇有固定促销活动,为了加⼤促销⼒度,现提升节日促销活动规格; 代码 class Context { }; class ProStategy { p原创 2021-05-26 19:58:25 · 97 阅读 · 0 评论 -
快速入门设计模式Ⅰ—模式设计原则、模板方法、观察者模式
模式设计原则 依赖倒置原则 高层模块不应该依赖低层模块,二者都应该依赖抽象 抽象不应该依赖具体实现,具体实现应该依赖于抽象 开放封闭原则 一个类应该对扩展开放,对修改关闭 面向接口编程 不将变量类型声明为某个特定的具体类,而是声明为某个接口。 客户程序无需获取对象的具体类型,只需要知道对象具有的接口。 减少系统中各部分的依赖关系,实现“高内聚、松耦合“的类型设计方案 封装变化点 将稳定点和变化点分离,扩展修改变化点;让稳定点与变化点的实现层次分离; 单一职责原则 一原创 2021-05-20 17:43:29 · 124 阅读 · 0 评论