![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 67
WhiteShirtI
不管你现在是什么状态 你要记住 生活中的目标就是快乐自由 每天开心
展开
-
设计模式 C++装饰模式
买了新房(毛坯房)需要装修,对新房进行装修并没有改变房子用于居住的本质,但它让房子变得更漂亮,更加满足居家的需求。在软件设计中,我们也可以用类似的技术对原有对象(新房)的功能进行扩展(装修),以获得更加符合用户需求的对象。这种技术在设计模式中称为装饰模式装饰模式可以在不改变一个对象本身的基础上给对象增加额外的新行为,在现实生活中,这种情况比比皆是,如一张照片,可以不改变照片本身,给它增加一个相框,使得它具有防潮的功能,而且用户可以根据需要给它增加不同类型的相框,甚至可以在一个小相框的外面再套一个大相框使原创 2021-06-05 11:31:39 · 310 阅读 · 2 评论 -
设计模式 C++观察者模式
无论是在现实世界中还是在软件系统中,人们常常会遇到这样一类问题,一个对象的状态改变会引发其他对象的状态改变,如十字路口的交通信号灯,红灯亮则汽车停,绿灯亮则汽车行,再如点击软件中一个按钮,则会弹出一个窗口。这些对象之间存在一种依赖关系,一个对象的行为会导致依赖它的其他对象发生反应,为了更好地描述这种对象之间的依赖关系,我们需要学习一种新的行为型设计模式,即观察者模式,它是软件设计与开发中使用频率最高的设计模式之一定义思想:定义对象间一种一对多的依赖关系,使得每当一个对象状态发生改变时,其他相关对象皆得到通原创 2021-06-04 12:59:15 · 232 阅读 · 0 评论 -
设计模式 C++外观者模式
无论是在现实生活中还是在软件开发过程中,人们经常会遇到这样一类情况:需要和多个对象打交道,例如用户在自行组装计算机时需要购买显示器、主板、硬盘、内存、CPU 等硬件设备,组装过程麻烦而且可能还会存在设备不兼容,而直接购买已由专业人士组装好的计算机则可以省去这些麻烦。我们无须购置设备,通过专业计算机组装人员可以获得一台完整的计算机。由于计算机组装人员的出现,简化了用户与多个设备之间的交互,使得用户不需要关心设备的组装细节即可使用它们,在这里,计算机组装人员充当了一个我们称之为“外观类”的角色,通过它可以简化用原创 2021-06-03 17:17:16 · 231 阅读 · 0 评论 -
设计模式 C++抽象工厂模式
推荐阅读设计模式 C++工厂方法模式品牌知名度逐渐提高,不单单只生产一种产品,如果我们继续使用一个工厂对应一种产品,那么假如有三个品牌华为、小米、苹果。他们各自都要三种产品,分别为手机、耳机、笔记本电脑。则此时我们需要创建9个工厂才能实现,类多了代码的实现和维护起来也是非常麻烦的。此时我们就必须引入一种新的模式----抽象方法模式定义思想:抽象工厂模式是工厂方法模式的泛化版,工厂方法模式是一种特殊的抽象工厂模式。在工厂方法模式中,每一个具体工厂只能生成一种具体产品,而在抽象工厂方法模式中,每一个具体工原创 2021-06-03 15:41:56 · 289 阅读 · 2 评论 -
设计模式 C++工厂方法模式
推荐阅读设计模式 C++简单工厂模式工厂方法模式是在简单工厂模式的缺点上进行优化的,我们都知道,在简单工厂模式中,要去增加或者减少一个产品的类型,都需要修改工厂中的if-else判断。这样子显然不符合我们代码开发中的开闭原则,拓展起来也是非常麻烦的工厂方法模式 = 简单工厂模式 + “开闭原则”定义思想:工厂父类负责定义创建产品对象的公共接口,而工厂子类则负责生成具体的产品对象,这样做的目的就是将产品类的实例化操作延迟到工厂子类中完成,即通过工厂子类来确定究竟应该实例化哪一个具体产品类优点:不需原创 2021-06-03 14:27:54 · 328 阅读 · 4 评论 -
设计模式 C++简单工厂模式
在我们要使用一个对象时,就必须通过类来实例化对象,也就是需要new一个对象。在new的过程是非常复杂的,要经过读文件->解析文本->创建对象->给属性设值等过程。而引入工厂模式,就是将创建类的这个步骤又工厂来帮我们完成,我们只需要去使用工厂里创建好的类即可。在使用工厂时,我们需要让工厂知道我们想要的一个对象,所以我们可以通过传参的方式去告诉工厂我们的需求优点:实现了客户端和具体实现类的解耦客户端免除了直接创建产品对象的责任,而仅仅“消费”产品产品客户端无需知道所创建的具体产品类的原创 2021-06-03 13:48:32 · 266 阅读 · 1 评论 -
设计模式 C++单例模式
什么是设计模式(Design Pattern)设计模式是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结设计模式功能为了代码可重用性、让代码更容易被他人理解、保证代码可靠性单例模式单例模式作用:主要解决一个全局使用的类频繁的创建和销毁的问题。单例模式下可以确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。单例模式的三要素:1、某个类只能有一个实例 2、它必须自行创建这个实例 3、必须自行向整个系统提供这个实例单例模式使用场景:比如在某个服务器程序中,该服务器原创 2021-04-08 18:01:08 · 488 阅读 · 2 评论