设计模式分类

本文详细介绍了设计模式的三大类别——创建型、结构型和行为型,分别列举了单例模式、工厂模式等实例,并阐述了每种模式的目的和作用,以降低代码耦合度和提高灵活性。
摘要由CSDN通过智能技术生成

设计模式是软件工程中的一种通用解决方案,它们被设计用来解决在软件设计过程中会经常遇到的一些问题。根据设计模式的使用方式和目的,可以将它们分为三大分类:创建型设计模式、结构型设计模式和行为型设计模式。

创建型设计模式

创建型设计模式主要用于对象的创建和实例化,它们为代码提供了更加灵活的实例化方式,可以帮助我们尽可能地降低代码之间的耦合度。

单例模式

单例模式被设计用于确保类只能被实例化一次,确保全局只有一个实例对象。

工厂模式

工厂模式为对象的创建提供了一个工厂方法,这个方法关注的是对象的创建过程,而不是对象本身。

抽象工厂模式

抽象工厂模式为对象的创建提供了一组工厂方法,每个工厂方法关注的是一组相互关联的对象的创建过程。

建造者模式

建造者模式为对象的创建提供了一种更加灵活的方式,它将对象的创建过程分解为若干个步骤,可以按照需要组合这些步骤,创建不同的对象。

原型模式

原型模式通过复制已有的对象来创建新的对象,这个过程是通过对象的克隆来实现的。

结构型设计模式

结构型设计模式主要用于处理对象之间的关系,它们通过定义对象之间的关系,来降低代码之间的耦合度。

适配器模式

适配器模式用于将一个类的接口转换成客户希望的另外一个接口。

桥接模式

桥接模式将抽象部分与它的实现部分分离开来,从而使它们可以独立地变化。

组合模式

组合模式将对象组合成树形结构来表示“整体-部分”的层次结构,可以更加方便地处理复杂的对象结构。

装饰器模式

装饰器模式为对象动态地添加额外的功能,可以在不改变对象原有功能的基础上,为它们添加新的功能。

外观模式

外观模式为对象提供了一个统一的接口,用于访问子系统中的一组接口。

享元模式

享元模式通过共享相同的状态,来减少对象的数量,从而降低内存的使用和对象的创建和销毁的开销。

代理模式

代理模式为对象提供了一个代理,用于控制对这个对象的访问。

行为型设计模式

行为型设计模式主要用于控制对象之间的交互方式,它们通过定义对象之间的协作方式,来降低代码之间的耦合度。

职责链模式

职责链模式将请求和处理解耦,可以建立一个链式结构,将多个处理对象组成一条链,由这些对象依次处理请求。

命令模式

命令模式将请求封装成命令对象,从而可以将命令对象作为参数传递、存储、调用和操作。

解释器模式

解释器模式定义了一种语言,用于处理特定的问题域。

迭代器模式

迭代器模式为遍历集合提供了一种统一的接口,可以使用相同的代码对不同类型的集合进行遍历。

中介者模式

中介者模式通过封装对象之间的交互,来降低这些对象之间的耦合度。

备忘录模式

备忘录模式用于实现将对象状态保存到外部,并在需要时将对象恢复到之前的状态。

观察者模式

观察者模式定义了一种对象之间发布-订阅的机制,即发布者发布事件,订阅者订阅事件,并在事件被发布后得到通知。

状态模式

状态模式将对象的行为和它的状态分离开来,从而让对象在不同的状态下具有不同的行为。

策略模式

策略模式定义了一系列算法,将它们封装成对象,并使它们可以相互替换使用。

模板方法模式

模板方法模式定义了一种算法的骨架,将一些步骤延迟到子类中去实现。

访问者模式

访问者模式提供了一种灵活的方式来增强现有的对象结构,而不必对其进行修改。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值