来源书籍

设计模式:可复用面向对象软件的基础(典藏版)

软件设计与复杂性管理类

经典原理(高信息浓度 + 高稳定性)

类别清单覆盖

尚未完成类别清单核对。

全书概览

设计模式:可复用面向对象软件的基础(典藏版)

类别:软件设计与复杂性管理类

四象限评级:经典原理(高信息浓度 + 高稳定性)

评级理由:本书的主体不是某个语言、框架或版本的操作手册,而是围绕对象协作、接口与实现分离、组合复用、运行期结构、请求封装、对象创建等稳定设计问题展开。第1章把模式定义为可命名、可复用的设计经验,并讨论“寻找对象”“决定对象粒度”“指定接口”“设计应支持变化”等底层决策;第2章用文档编辑器案例把 Composite、Strategy、Decorator、Abstract Factory、Bridge、Command、Iterator、Visitor 串联成真实设计推理;第3-5章系统讨论23个模式的意图、适用性、结构、协作与后果。内容高度关注“为什么这样设计”和“这样设计的代价”,即使具体示例语言和GUI环境已经过时,核心权衡仍能迁移到现代软件架构中。

章节进度追踪

章节号 章节标题 精读/略读 状态(pending/done) 卡片数 理由
前言-1 出版者的话 略读 done 0 出版背景与推荐语,非核心设计知识。
前言-2 赞誉 略读 done 0 评价性内容,不生成知识卡片。
前言-3 序言 略读 done 0 介绍版本和背景,信息价值低于主体章节。
前言-4 前言 略读 done 0 说明写作缘起和读者对象,作为背景即可。
前言-5 读者指南 略读 done 0 阅读路径说明,不属于稳定设计原理。
1 引言 精读 done 5 定义设计模式、分类方式、接口/实现、组合复用与变化封装,是全书方法论入口。
2 实例研究:设计一个文档编辑器 精读 done 7 用编辑器案例串联多个模式,展示模式如何共同解决真实设计变化点。
3.1 Abstract Factory(抽象工厂) 精读 done 2 创建产品族并保持一致性,是对象创建解耦的核心模式。
3.2 Builder(生成器) 精读 done 2 把构造流程和产品表示拆开,适合复杂对象生成。
3.3 Factory Method(工厂方法) 精读 done 2 展示框架如何延迟具体产品创建。
3.4 Prototype(原型) 精读 done 2 用复制替代显式实例化,体现运行期创建灵活性。
3.5 Singleton(单件) 精读 done 2 讨论唯一实例及其全局访问代价,仍有设计警示价值。
3.6 创建型模式的讨论 精读 done 2 横向比较创建型模式的变化轴和权衡。
4.1 Adapter(适配器) 精读 done 2 处理接口不兼容,是复用遗留代码和第三方库的常见边界模式。
4.2 Bridge(桥接) 精读 done 2 分离抽象与实现,适合多维变化。
4.3 Composite(组合) 精读 done 2 统一整体和部分,支撑树形对象结构。
4.4 Decorator(装饰) 精读 done 2 以对象组合动态添加职责,是继承替代方案。
4.5 Facade(外观) 精读 done 2 为复杂子系统建立稳定入口,适合模块边界设计。
4.6 Flyweight(享元) 精读 done 2 通过共享细粒度对象优化内存,体现状态拆分。
4.7 Proxy(代理) 精读 done 2 控制访问路径,覆盖延迟、远程、权限等场景。
4.8 结构型模式的讨论 精读 done 2 比较结构相似但意图不同的包装/组合模式。
5.1 Chain of Responsibility(职责链) 精读 done 2 解耦请求发送者与处理者,适合可配置处理链。
5.2 Command(命令) 精读 done 2 对象化请求,支撑撤销、队列和日志。
5.3 Interpreter(解释器) 精读 done 2 展示小型语言和语法树对象化的设计。
5.4 Iterator(迭代器) 精读 done 2 封装集合遍历,隔离内部表示。
5.5 Mediator(中介者) 精读 done 2 集中对象协作,降低多对象网状依赖。
5.6 Memento(备忘录) 精读 done 2 保存内部状态而不破坏封装,适合撤销与回滚。
5.7 Observer(观察者) 精读 done 2 建立一对多通知依赖,是事件驱动设计基础。
5.8 State(状态) 精读 done 2 把状态相关行为对象化,控制条件分支膨胀。
5.9 Strategy(策略) 精读 done 2 封装算法族,适合规则替换。
5.10 Template Method(模板方法) 精读 done 2 固定算法骨架并开放步骤扩展。
5.11 Visitor(访问者) 精读 done 2 在稳定对象结构上新增操作,权衡明显。
5.12 行为型模式的讨论 精读 done 3 横向比较行为封装、发送接收解耦与通信位置。
6 结论 精读 done 3 总结模式语言、重构目标和模式使用边界。
附录A 词汇表 略读 done 0 术语索引,适合查阅但不生成卡片。
附录B 图示符号指南 略读 done 0 符号说明偏工具性,略读即可。
附录C 基本类 略读 done 0 示例基础类,偏代码支撑材料。
参考文献 参考文献 略读 done 0 来源清单,不生成卡片。

章节与卡片

01

  1. 模式命名经验 普通读书笔记卡
  2. 意图优先分类 普通读书笔记卡
  3. 接口隔离实现 普通读书笔记卡
  4. 组合胜过继承 普通读书笔记卡
  5. 为变化设计 普通读书笔记卡

02

  1. 递归组合文档 普通读书笔记卡
  2. 格式算法封装 普通读书笔记卡
  3. 透明装饰界面 普通读书笔记卡
  4. 视感族一致性 普通读书笔记卡
  5. 窗口实现分离 普通读书笔记卡
  6. 命令保存意图 普通读书笔记卡
  7. 遍历分析分离 普通读书笔记卡

03

  1. 抽象工厂管族 普通读书笔记卡
  2. 工厂扩展代价 普通读书笔记卡
  3. 生成器分离构造 普通读书笔记卡
  4. 导演者保流程 普通读书笔记卡
  5. 延迟实例化 普通读书笔记卡
  6. 钩子式创建 普通读书笔记卡
  7. 复制替代创建 普通读书笔记卡
  8. 原型登记表 普通读书笔记卡
  9. 单件控制唯一 普通读书笔记卡
  10. 单件可被替换 普通读书笔记卡
  11. 创建抽象选择 普通读书笔记卡
  12. 创建隐藏耦合 普通读书笔记卡

04

  1. 适配已有接口 普通读书笔记卡
  2. 类与对象适配 普通读书笔记卡
  3. 抽象实现分离 普通读书笔记卡
  4. 桥接保留语义 普通读书笔记卡
  5. 整体部分一致 普通读书笔记卡
  6. 透明安全权衡 普通读书笔记卡
  7. 装饰动态加责 普通读书笔记卡
  8. 装饰保持接口 普通读书笔记卡
  9. 外观压低入口 普通读书笔记卡
  10. 外观降低耦合 普通读书笔记卡
  11. 享元拆分状态 普通读书笔记卡
  12. 享元适用条件 普通读书笔记卡
  13. 代理控制访问 普通读书笔记卡
  14. 代理不等装饰 普通读书笔记卡
  15. 相似结构异意图 普通读书笔记卡
  16. 组合装饰代理 普通读书笔记卡

05

  1. 请求沿链传递 普通读书笔记卡
  2. 链路可能落空 普通读书笔记卡
  3. 命令对象化请求 普通读书笔记卡
  4. 撤销依赖状态 普通读书笔记卡
  5. 语法树即程序 普通读书笔记卡
  6. 规则类化代价 普通读书笔记卡
  7. 遍历封装起来 普通读书笔记卡
  8. 外部内部迭代 普通读书笔记卡
  9. 中介集中协作 普通读书笔记卡
  10. 中介者会变胖 普通读书笔记卡
  11. 快照保护封装 普通读书笔记卡
  12. 状态归属清晰 普通读书笔记卡
  13. 观察者解耦通知 普通读书笔记卡
  14. 通知粒度权衡 普通读书笔记卡
  15. 状态对象化分支 普通读书笔记卡
  16. 转换位置选择 普通读书笔记卡
  17. 算法族可替换 普通读书笔记卡
  18. 策略暴露数据 普通读书笔记卡
  19. 模板固定骨架 普通读书笔记卡
  20. 钩子控制扩展 普通读书笔记卡
  21. 访问者加操作 普通读书笔记卡
  22. 访问者怕新元素 普通读书笔记卡
  23. 行为封装变化 普通读书笔记卡
  24. 发送接收解耦 普通读书笔记卡
  25. 通信位置选择 普通读书笔记卡

06

  1. 共享设计词汇 普通读书笔记卡
  2. 模式辅助重构 普通读书笔记卡
  3. 模式不是终点 普通读书笔记卡

相关主题

暂无公开主题。