设计模式——总结

本文详细介绍了设计模式的三大类别:创建型、结构型和行为型,涵盖23种模式的核心概念和分类。创建型模式如抽象工厂、单例,结构型模式包括适配器、装饰器,行为型模式涉及策略、观察者等。文章还深入探讨了易混淆模式的区别,如工厂方法与抽象工厂、策略模式与状态模式等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

设计模式

一共23种,创建型,结构型,行为型。

创建型

概念

这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。

分类

  • 抽象工厂模式
  • 构造者模式
  • 工厂方式模式
  • 原型模式
  • 单例模式

结构型

概念

这些设计模式关注类和对象的组合。继承的概念被用来组合接口和定义组合对象获得新功能的方式。

分类

  • 适配器模式
  • 桥接模式
  • 组合模式
  • 装饰器模式
  • 外观模式
  • 享元模式
  • 代理模式

行为型

概念

这些设计模式特别关注对象之间的通信。

分类

  • 责任链模式
  • 命令模式
  • 解释器模式
  • 迭代器模式
  • 中介者模式
  • 备忘录模式
  • 观察者模式
  • 状态模式
  • 策略模式
  • 模板方法模式
  • 访问者模式

一些易混淆的模式的区别

工厂方法模式/抽象工厂模式

工厂方法模式:封装对象产生细节,产出目标是类的一个单一对象。
抽象工厂模式:每个抽象工厂的实现类 负责产出某一类型的产品簇;比如
操作系统抽象工厂,每个工厂定义一堆比如 文件管理系统 窗口管理的不同的功能模块,但是每个平台又不一样,具体实现类 Windows 工厂,Mac OS 工厂,

策略模式/状态模式/适配器模式

策略模式:策略类对客户端是暴露的,策略是外界给的,策略怎么变,是调用者考虑的事情,系统只是根据所给的策略做事情。
状态模式:状态是系统自身的固有的,由系统本身控制,调用者不能直接指定或改变系统的状态转移。
适配器模式:通过适配接口 抽象将原始类方法进行转换成通用方法 。

代理模式/装饰者模式

代理模式:对原始对象施加控制,可以不持有原有类的对象引用;
装饰者模式:增强原有类的功能,持有原有类的对象引用,是对继承方式的一种替代方法;

中介者模式/外观模式 /桥接模式

外观模式:对外提供统一API,避免外部对内部子系统的直接调用,降低复杂度和使用成本。
中介者模式:是用一个中介对象来封装一系列内部对象的交互行为,用于解耦。
桥接模式: 分离了一个类存在两个独立变化的维度,且这两个维度都需要进行扩展。例如不同的形状和不同的颜色,通过中间层类 连接两个抽象类来建立关联。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值