重修设计模式-概览

设计模式(Design Pattern)是对软件设计中普遍存在(反复出现)的各种问题所提出的解决方案。这些设计模式的实现和原理并不复杂, 重要的是搞清使用场景。

设计模式可以分为三大类,共23种:

**创建型:**主要解决对象的创建问题,将对象的创建与使用解耦。

  1. 单例模式
  2. 工厂模式
  3. 抽象工厂模式
  4. 建造者模式
  5. 原型模式

**结构型:**主要总结了类或对象组合在一起的经典结构。

  1. 代理模式
  2. 桥接模式
  3. 装饰器模式
  4. 适配器模式
  5. 门面模式
  6. 组合模式
  7. 享元模式

**行为型:**主要关注对象之间的交互和职责分配。

  1. 观察者模式
  2. 模板模式
  3. 策略模式
  4. 职责链模式
  5. 状态模式
  6. 迭代器模式
  7. 访问者模式
  8. 备忘录模式
  9. 命令模式
  10. 解释器模式
  11. 中介模式

借助设计模式,可以利用更好的代码结构,将大块复杂代码拆分成职责更单一的小类,让其满足开闭原则、高内聚松耦合等特性,以此来控制和应对代码的复杂性,提高代码的可扩展性。

相关推荐
宁之明起(B服)7 分钟前
Java 反序列化漏洞-xmldecoder/SnakeYAM
java·开发语言
禾高网络24 分钟前
开启环保新潮流:回收小程序系统功能介绍
java·大数据·小程序
deviant-ART27 分钟前
java stream 的 findFirst 及 findAny 方法遇到 null 元素时会出现 NullPointerException
java·开发语言
董员外1 小时前
RAG 系统进化论(九):RAG 评测,怎样证明系统真的变好了?
人工智能·设计模式·程序员
jjjava2.01 小时前
MyBatis动态if/trim/where/set标签详解
java·开发语言·数据库
gugucoding1 小时前
34.【Java】I/O流(下):NIO与文件操作
java·python·nio
tianyu2342 小时前
双指针循环匹配金额——打款记录与账单的自动对账算法
java·算法·双指针循环·匹配金额
YDS8292 小时前
大营销平台 —— 架构解析和抽奖流程串联
java·springboot·ddd
小贤plus2 小时前
MyBatis‑Plus IPage 分页踩坑实战:分页与全量查询兼容方案
java
西安小哥2 小时前
AI时代技术工程师的"道法术器势":学习图谱、成长规划与角色重塑
人工智能·设计模式·程序员