重修设计模式-概览

设计模式(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. 中介模式

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

相关推荐
AI进化营-智能译站4 小时前
ROS2 C++开发系列17-多线程驱动多传感器|chrono高精度计时实现机器人同步控制
java·c++·ai·机器人
qq_589568108 小时前
springbootweb案例,出现访问 http://localhost:8080/list 一直处于浏览器运转阶段
java·网络协议·http·list·springboot
JAVA面经实录9178 小时前
计算机基础(完整版·超详细可背诵)
java·linux·数据结构·算法
AC赳赳老秦8 小时前
知识产权辅助:用 OpenClaw 批量生成专利交底书 / 软著申请材料,自动校验格式与内容合规性
java·人工智能·python·算法·elasticsearch·deepseek·openclaw
FYKJ_20109 小时前
springboot校园兼职平台--附源码02041
java·javascript·spring boot·python·eclipse·django·php
书源丶10 小时前
三十六、File 类与 IO 流基础——文件操作的「第一步」
java
AI人工智能+电脑小能手11 小时前
【大白话说Java面试题】【Java基础篇】第30题:JDK动态代理和CGLIB动态代理有什么区别
java·开发语言·后端·面试·代理模式
DFT计算杂谈11 小时前
wannier90 参数详解大全
java·前端·css·html·css3
marsh020611 小时前
43 openclaw熔断与降级:保障系统在异常情况下的可用性
java·运维·网络·ai·编程·技术