当前位置: 首页 > news >正文

架构师备考-设计模式23种及其记忆特点

引言

以下是一篇关于架构师备考中设计模式23种的博文架构及记忆技巧总结,内容清晰、结构系统,适合快速掌握核心知识点。 考试类型是给语句描述或者类图,判断是哪一种设计模式(会出现英文的名词),2024年的两场考试选择题都考到了设计模式,2~4分。


架构师备考:23种设计模式分类、特点与高效记忆法

一、设计模式总览

三大分类核心目标模式数量记忆口诀
创建型(5种)对象创建解耦工厂方法、抽象工厂、建造者、原型、单例单抽元件厂
结构型(7种)类与对象组合适配器、桥接、组合、装饰器、外观、享元、代理外侨组员戴配饰
行为型(11种)对象交互与职责分配责任链、命令、解释器、迭代器、中介者、备忘录、观察者、状态、策略、模板方法、访问者观摩迭策,责令解放,戒忘台

二、分类详解与记忆技巧

1. 创建型模式(5种)

模式名称核心思想典型场景记忆口诀
工厂方法Factory延迟子类决定对象类型多种数据库连接器“子类选产品”
抽象工厂Abstract Factory创建产品族跨平台UI组件库“全家桶打包”
建造者Builder分步构建复杂对象定制电脑配置“搭积木,分步骤”
原型Prototype克隆现有对象游戏角色复制“复制粘贴”
单例Singleton全局唯一访问点配置管理器、日志处理器“独一份,锁保险”

记忆技巧

  • 关联场景:想象开一家工厂(工厂方法)、生产全套家电(抽象工厂)、组装汽车(建造者)、克隆羊多莉(原型)、总统唯一(单例)。
  • 对比区分
    • 工厂方法 vs 抽象工厂:前者单产品,后者产品族。

2. 结构型模式(7种)

模式名称核心思想典型场景记忆口诀
适配器Adapter接口转换兼容旧系统对接新API“转接头”
桥接Bridge抽象与实现分离跨平台图形渲染“搭桥解耦”
组合Composite树形结构统一处理文件系统目录管理“整体=部分之和”
装饰器Decorator动态添加功能Java I/O流嵌套“俄罗斯套娃”
外观Facade简化复杂子系统接口一键启动智能家居“总开关”
享元Flyweight共享细粒度对象字符重复渲染优化“资源共享池”
代理Proxy控制对象访问远程服务调用、权限检查“中介代劳”

记忆技巧

  • 形象类比
    • 适配器(转接头)、桥接(连接两岸)、组合(文件夹嵌套)、装饰器(洋葱包装)、外观(统一入口)、享元(重复利用)、代理(经纪人)。
  • 考试重点:适配器(结构转换) vs 装饰器(功能增强)。

3. 行为型模式(11种)

模式名称核心思想典型场景记忆口诀
责任链Chain of Responsibility请求传递链审批流程分级处理“击鼓传花”
命令Command封装请求为对象撤销/重做功能“存折单据”
解释器Interpreter定义语法解释SQL解析、正则表达式“翻译官”
迭代器Iterator统一遍历接口集合类遍历“遥控器翻页”
中介者Mediator集中对象交互聊天室消息转发“路由器”
备忘录Memento保存与恢复对象状态游戏存档“时光机”
观察者Observer订阅-通知机制事件监听(如按钮点击)“广播通知”
状态State状态改变行为订单状态流转“变脸”
策略Strategy算法族互换支付方式选择“可插拔”
模板方法Template Method定义算法骨架工作流标准化“填空题”
访问者Visitor解耦数据结构与操作报表生成器遍历不同元素“游客参观”

记忆技巧

  • 场景串联
    • 处理审批流程(责任链)→ 用户点击按钮(观察者)→ 执行撤销命令(命令)→ 恢复存档(备忘录)→ 切换支付策略(策略)。
  • 高频考点
    • 观察者 vs 发布订阅(后者更解耦)
    • 状态模式 vs 策略模式(前者状态驱动行为,后者算法替换)

三、高效记忆方法论

1. 分类记忆法

  • 创建型:聚焦“怎么生”
  • 结构型:解决“怎么搭”
  • 行为型:管理“怎么动”

2. 口诀总结

  • 创建型5种
    “单例独一份,工厂造产品,抽象全家桶,建造分步骤,原型靠克隆”
  • 结构型7种
    “适配转接口,桥接连两岸,组合成树形,装饰加功能,外观简入口,享元省资源,代理代访问”
  • 行为型11种
    “责任传链条,命令封请求,解释定语法,迭代遍集合,中介管交互,备忘存状态,观察发通知,状态变行为,策略换算法,模板定骨架,访问解操作”

3. 对比记忆法

对比组核心区别
工厂方法 vs 抽象工厂单产品 vs 产品族
适配器 vs 装饰器接口转换 vs 功能增强
观察者 vs 发布订阅直接耦合 vs 通过中间通道
状态模式 vs 策略模式状态驱动行为变化 vs 算法灵活替换

四、备考实战建议

  1. 画UML图:对每个模式绘类图(重点角色:Client、Product、Factory等)。
    23种常用设计模式的UML类图

  2. 场景映射:为每个模式联想一个现实案例(如单例→总统)。

  3. 刷题巩固:重点练习模式识别题(如给出代码判断模式)。

  4. 错题整理:记录混淆点(如常分不清桥接和适配器)。


*附:设计模式总图
在这里插入图片描述


掌握设计模式的核心在于理解其解决问题的场景而非死记硬背。结合上述方法,在备考中可快速定位模式特征,轻松应对架构师考试中的设计模式考题!

相关文章:

  • 【虚幻C++笔记】碰撞检测
  • 指标监控:Prometheus 结合 Grafana,监控redis、mysql、springboot程序等等
  • 一文详解Adobe Photoshop 2025安装教程
  • Springboot集成SSE实现消息推送+RabbitMQ解决集群环境下SSE通道跨节点事件推送问题
  • 【BBDM】main.py -- notes
  • CrewAI Community Version(二)——Agent
  • springboot入门-DTO数据传输层
  • 大模型的使用
  • C++学习之路,从0到精通的征途:List类的模拟实现
  • 【概念】什么是 JWT Token?
  • Gewechat启动启动报错
  • GPU加速-系统CUDA12.5-Windows10
  • 【开源】基于51单片机的简易智能楼道照明设计
  • 栈应用:括号匹配
  • 论文阅读:2025 arxiv Aligning to What? Limits to RLHF Based Alignment
  • Java大师成长计划之第4天:Java中的泛型
  • Yarn 安装与使用教程
  • 自动化测试方法有哪些?
  • 【软考-架构】14、软件可靠性基础
  • 深入解析 ASP.NET Core 中的 ResourceFilter
  • 持续更新丨伊朗港口爆炸事件已致406人受伤
  • 俄军方:已完成库尔斯克地区全面控制行动
  • 三大猪企去年净利润同比均较大幅度增长,资产负债率齐降
  • “70后”通化市委书记孙简已任吉林省政府领导
  • 体坛联播|皇马上演罢赛闹剧,杨瀚森宣布参加NBA选秀
  • 五矿地产:今年要确保债务“不爆雷”、交付“不烂尾”