
设计模式
YSQ-911
这个作者很懒,什么都没留下…
展开
-
适配器模式(C++)
意图:将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作使用场景1、当使用一个已经存在的类时,而它的接口不符合你的需求2、创建一个可以复用的类,并且该类可以与其他不相关的类或不可预见的类协同工作3、对于对象适配器向使用其已经存在的子类优缺点优点: 1、可以让任何两个没有关联的类一起运行。 2、提高了类的复用。 3、增加了类的透明度。 4、灵活性好。缺点: 1、过多地使用适配器,会让系统非常零乱,不易整体进行把握。比如,原创 2020-06-12 20:23:54 · 423 阅读 · 0 评论 -
单例模式
三、单例模式定义:保证一个类仅有一个实例,并提供一个实例的全局访问点目的作用:1、在某些特殊的软件系统中,为了保证逻辑正确和良好的效率,必须在系统中存在一个实例。2、绕过常规的构造器,提供一种机制来保证一个类只有一个实例。使用场景:1、读取配置文件2、频繁实例化并随后销毁时3、频繁访问IO资源时,如各种数据的连接4、创建对象时对资源的消耗过多并耗时,但是又经常要用到对象UML结构:四种单例模式:1、饿汉式单例:将实例设置为static变量,当类进行装载时进行创建,且stat原创 2020-05-14 21:41:56 · 106 阅读 · 0 评论 -
工厂模式
定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂模式使一个类的实例化延迟到子类目的作用:1、解耦合2、适应需求的变化,适应要创建的对象的具体类型经常变化3、绕过对象的创建,提供一种“封装机制”来避免客户程序和这种“具体对象创建工作”的紧耦合使用场景:1、数据导出2、支付接口UML结构:结构代码:```c++#include <iostream>using namespace std;class Export_File{public:原创 2020-05-13 22:10:53 · 198 阅读 · 0 评论 -
观察者模式
定义:定义对象间的一种一对多(变化)的的依赖关系,以便当一个对象的状态发生改变是,所有依赖于它的对象都得到通知并自动更新作用:1、在软件构建过程中,我们需要为某些对象建立一种“通知依赖关系”,当一个目标对象的状态发生改变,所有的依赖对象即观察者都将得到通知。如果这样的依赖关系过于紧密,将使软件不能做到适应业务变化。2、弱化依赖关系,形成一种稳定的依赖关系。从而达到结构的松耦合。模型:1、推模型:把具体的内容相当于广播模式推送给目标对象2、拉模型:目标对象在通知观察者时,只传递少量的信息。如原创 2020-05-13 22:05:54 · 131 阅读 · 0 评论