设计模式
文章平均质量分 67
Sudouble
动静结合,持之以恒!
展开
-
设计模式——Facade
一、模式定义门面模式(Facade Pattern):外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。门面模式又称为外观模式,它是一种对象结构型模式。二、模式动机现代的软件系统都非常复杂,尽管我们已经想尽一切方法将其“分而治之”,把一个系统划分为好几个较小的子系统了,但是仍然可能会存在这样的问题:子系统内有非常多的类,客户端往往需要和许多对象打交道之后 才能完成想要完成的功能。在我们的转载 2021-05-31 10:18:28 · 1391 阅读 · 0 评论 -
设计模式——Adapter
中文名:适配器模式作用GOF中的描述:将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。描述的解释:两个不接口不同但功能相似的产品,转换为一种接口的形式。优缺点使其实用方式相似 改造的成本可能会很高,改造前需评估是否确实需要适配结构适配分为两种,一种是类适配器,利用继承的技术;另一种是对象适配器,使用组合的技术。Target类:目标接口Adaptee类:带适配的类Adapter类:将Adapte.原创 2021-01-14 22:04:16 · 141 阅读 · 0 评论 -
设计模式——Singleton
中文名:单例模式作用GOF中的描述:保证一个类仅有一个实例,并提供一个访问它的全局访问点。描述的解释:在有限的资源下,使用资源。如打印机,一个人在打印了,再来一个人,后续需要等待。优缺点对唯一实例的受控访问 缩小名字空间 允许可变数目的实例 缺点:需要考虑线程安全性!结构Singleton类:不能主动创建类,只提供一个具体访问的接口例子// CreateMode_Singleton.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//.原创 2021-01-14 21:33:42 · 121 阅读 · 0 评论 -
设计模式——Prototype
Prototype的中文名:原型模式作用GOF中的描述:用原型实例指定创建对象的类,并且通过拷贝这些原型创建新的对象。描述的解释:举个老家那边的例子。老家那边以五金加工为本业,为生产出一个设备的外壳,最经济最快速的方式是使用模具(指代上文中的原型实例),有了模具,只需往模具中浇灌铁水就可以创建千千万万个外壳(即上文中的实例)。简称:都是一个模子刻出来的!主要目的:便捷的产生新的实例优缺点运行时增加和删除产品 允许方便的由部件和子部件来创建对象 减少子类的构造——本身就能产生克隆原创 2020-12-21 23:13:43 · 192 阅读 · 0 评论 -
设计模式——Builder
Builder的中文名:生成器作用GOF中的描述:将一个复杂对象的构建和它的表示分离,使得同样的构建过程可以创建不同的标识。描述的解释:主要目的:将一个个的组件,组合成一个可以使用的产品。比如拿零件组装出一辆汽车。 组件的生成方法都集中在一个抽象类中 产品的产出由生产的“工厂”决定优缺点通过抽象接口,通过改变内在实现,但不影响外部使用; 工厂可以决定组件的组装方式,来产出不同的产品; 和抽象工厂(Abstract Factory)一样,对修改的开放性差,要对抽象接口增加新的方法原创 2020-12-12 23:09:50 · 174 阅读 · 0 评论 -
设计模式——Factory Method
Factory Mothod的中文名:工厂方法作用GOF中的描述:定义一个用于创建对象的接口,让子类决定实例化哪一类。Factory Method使一个类的实例化延迟到子类。描述的解释:创建:解除对类型的硬编码,使其支持可扩展的类型。 使用:手动给定类的类型,将对应的子类实例化。优缺点不绑定特定的类,支持进行功能扩展; 隔离了变化的部分——创建都在统一的函数中,且创建函数的实现可自行更改; 使用上稍微不方便,因类多,需要结合选择的参数,再去实例化哪个具体类;结构Pro.原创 2020-12-05 22:55:17 · 149 阅读 · 0 评论 -
设计模式——Abstract Factory
原创 2020-12-02 22:22:24 · 127 阅读 · 0 评论