来源书籍

设计模式之禅(第2版)

设计模式类

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

类别清单覆盖

8/8

已覆盖 8 补充生成 0 未覆盖 0

全书概览

《设计模式之禅(第2版)》读书笔记

  • Skill 版本:v7
  • 类别:设计模式类(book-workflow 批量任务期间新增)
  • 四象限结论:经典原理(高信息浓度 + 高稳定性)
  • 理由:全书围绕”为什么这样设计”展开——6大设计原则给出可迁移的判断标准(如单一职责原则用 “有且仅有一个原因引起类变更”衡量接口/类设计优劣,里氏替换原则用前置/后置条件收放规则 判断继承是否合法),23种设计模式逐一讲清动机、结构角色、适用场景、优缺点权衡与语言特性 影响,而非罗列某个框架/工具的操作步骤(信息浓度高)。这些原理是面向对象设计的通用哲学, 不绑定任何具体语言版本或框架(如单例模式定义、里氏替换的契约设计思想,Java 5 之后语法 变了但原理判断标准没变),15年后依然是行业公认的经典参考(稳定性高)。

章节进度追踪表

章节号 章节标题 精读/略读 状态(pending/done) 卡片数
00 前言 略读 done 0
01 第1章 单一职责原则 精读 done 6
02 第2章 里氏替换原则 精读 done 7
03 第3章 依赖倒置原则 精读 done 7
04 第4章 接口隔离原则 精读 done 6
05 第5章 迪米特法则 精读 done 6
06 第6章 开闭原则 精读 done 8
07 第7章 单例模式 精读 done 7
08 第8章 工厂方法模式 精读 done 7
09 第9章 抽象工厂模式 精读 done 6
10 第10章 模板方法模式 精读 done 8
11 第11章 建造者模式 精读 done 6
12 第12章 代理模式 精读 done 7
13 第13章 原型模式 精读 done 7
14 第14章 中介者模式 精读 done 7
15 第15章 命令模式 精读 done 7
16 第16章 责任链模式 精读 done 5
17 第17章 装饰模式 精读 done 7
18 第18章 策略模式 精读 done 6
19 第19章 适配器模式 精读 done 5
20 第20章 迭代器模式 精读 done 4
21 第21章 组合模式 精读 done 6
22 第22章 观察者模式 精读 done 7
23 第23章 门面模式 精读 done 6
24 第24章 备忘录模式 精读 done 8
25 第25章 访问者模式 精读 done 6
26 第26章 状态模式 精读 done 7
27 第27章 解释器模式 精读 done 5
28 第28章 享元模式 精读 done 6
29 第29章 桥梁模式 精读 done 6
30 第30章 创建类模式大PK 精读 done 4
31 第31章 结构类模式大PK 精读 done 4
32 第32章 行为类模式大PK 精读 done 6
33 第33章 跨战区PK 精读 done 6
34 第34章 命令模式+责任链模式 精读 done 4
35 第35章 工厂方法模式+策略模式 精读 done 4
36 第36章 观察者模式+中介者模式 精读 done 4
37 第37章 MVC框架 精读 done 6
38 第38章 新模式(规格/对象池/雇工/黑板/空对象) 精读 done 8
apx 附录 23种设计模式彩图 略读 done 0
  • 说明:38章 + 前言 + 附录彩图,共40个 spine 单元;前言为作者个人写作动机回顾,无概念性 讲解内容,判定略读跳过;附录仅为设计模式类图彩图汇总(无正文),判定略读跳过。其余38章 全部含实质性原则/模式定义、结构角色、适用场景、优缺点讲解,硬性判定精读。
  • 章节号采用”章”为单位(与目录 第N章 对应),不按 EPUB spine 的更细分小节(如1.1⁄1.2) 拆分章节号;卡片文件名 ch<两位章号>-<三位序号> 中章号对应本表章节号。

待关联术语

术语名 出现章节 一句话语境
RBAC模型 01 提及基于角色的访问控制模型作为用户管理场景背景,未展开讲解其内部机制

引用文献

标题 类型(书/论文/框架/源码项目) 出现章节 一句话语境
Wikipedia、OODesign 网站 01 作者查阅这两个网站佐证”类的单一职责难以量化”的行业共识,未展开介绍网站内容

资金安全问题案例

问题标题 问题卡 解决方案卡(如有) 出现章节 一句话说明
IC卡并发扣款丢失更新 并发扣款可能导致IC卡余额错乱的未处理风险 无(书中明确未处理,称之为”快乐路径”) 35 固定扣款策略读-算-写无并发控制,MQ多通道并发到达同一张卡时可能发生丢失更新,作者明确指出但未给出解法

实践卡进度

序号 实践标题 实践方式 状态(pending/done) 关联章节 产出
1 验证JDK io装饰模式家族的真实类继承结构 实现深读 done 31 用javap核验DataOutputStream/FilterOutputStream/FilterReader/FilterInputStream继承结构,并发现BufferedReader绕开FilterReader直接实现装饰的反例
2 对比Optional与空对象模式在消除null判断上的机制差异 横向学习 done 38 用javap核验java.util.Optional API,得出”显式分支 vs 静默统一路径”的选型结论
  • 说明:本书内容形态以模式讲解为主,多数知识点已在正文中提供充分的原书示例代码, 现实调研/行为实验/决策实践等路径缺少合适的现实对象;已选择两条可用本地环境(JDK 17) 直接核验、无需外部时效性事实的实现深读/横向学习路径,均已实际执行并产出真实发现。

类别清单核对(设计模式类)

维度 覆盖状态(已覆盖/补充生成/未覆盖) 关联卡片标题或未覆盖理由
模式意图与问题动机 已覆盖 全书每个模式引入部分均有对应卡片,如ch29-002-桥梁模式的定义与四个角色、ch08-001-工厂方法模式的定义与命令简化原理
适用场景与识别信号 已覆盖 如ch29-006-桥梁模式的使用场景与注意事项、各模式章节的”使用场景”卡片
结构角色与协作关系 已覆盖 如ch29-002-桥梁模式的定义与四个角色、ch25-002-访问者模式的定义与五个角色
与相近模式的区别 已覆盖 第31-33章「结构类模式大PK」「行为类模式大PK」「跨战区PK」共16张卡片专门辨析相邻模式边界
优缺点权衡 已覆盖 全书63张卡片涉及优缺点/代价/权衡内容,如ch29-004-桥梁模式的三大优点
违反设计原则的代价 已覆盖 第一部分6大设计原则40张卡片+全书24张涉及违反/反模式/坏味道的卡片,如ch26-001-switch判断状态的三个问题
语言特性对模式实现的影响 已覆盖 如ch13-007-final成员变量会阻断深拷贝实现(Java final特性对原型模式的影响)、ch12-006-动态代理用InvocationHandler接管方法实现(Java反射对代理模式的影响)、ch20-003-泛型符号E与Object父类的本质区别(Java泛型对迭代器模式的影响)
过度使用的反模式风险 已覆盖 如ch26-005-状态模式的适用场景与状态数量上限(状态超过5个应换其他手段)、ch18-006-策略模式的适用场景与策略数量阈值、ch14-005-中介者模式不是有依赖就该用而是量力而行及各模式”注意事项”类卡片

章节与卡片

01 第1章 单一职责原则

  1. 单一职责原则的定义 普通读书笔记卡
  2. 识别隐藏多重职责的判断方法 普通读书笔记卡
  3. 拆分接口而非拆分实现类规避强耦合 普通读书笔记卡
  4. 单一职责原则的四点收益 普通读书笔记卡
  5. 接口须绝对单一类的粒度按现实约束权衡 普通读书笔记卡
  6. 方法粒度同样适用单一职责 普通读书笔记卡

02 第2章 里氏替换原则

  1. 继承是收益与代价并存的双刃剑 普通读书笔记卡
  2. 里氏替换原则的两种定义 普通读书笔记卡
  3. 子类无法完整实现父类方法应断开继承 普通读书笔记卡
  4. 里氏替换只能正向使用不能反向要求 普通读书笔记卡
  5. 覆写方法的前置条件只能放大不能收紧 普通读书笔记卡
  6. 覆写方法的返回类型只能收紧不能放大 普通读书笔记卡
  7. 子类个性过强时应考虑断开继承关系 普通读书笔记卡

03 第3章 依赖倒置原则

  1. 依赖倒置原则的三层含义与Java体现 普通读书笔记卡
  2. 紧耦合的代价与设计稳定性的判断标准 普通读书笔记卡
  3. 依赖倒置降低并行开发风险的机制 普通读书笔记卡
  4. 依赖注入的三种传递方式 普通读书笔记卡
  5. 依赖倒置的五条落地规则 普通读书笔记卡
  6. 正置与倒置的含义区分 普通读书笔记卡
  7. 依赖倒置原则的适用边界 普通读书笔记卡

04 第4章 接口隔离原则

  1. 接口隔离原则的定义与单一职责原则的区别 普通读书笔记卡
  2. 接口拆分的底线是不违反单一职责原则 普通读书笔记卡
  3. 接口高内聚要求减少public方法承诺 普通读书笔记卡
  4. 为不同访问者定制专属接口防止越权风险 普通读书笔记卡
  5. 接口设计粒度没有固定标准 普通读书笔记卡
  6. 接口隔离的四条落地经验 普通读书笔记卡

05 第5章 迪米特法则

  1. 迪米特法则的定义 普通读书笔记卡
  2. 朋友类的判断标准与方法体内部依赖的隐患 普通读书笔记卡
  3. 朋友之间也要收敛public方法保持距离 普通读书笔记卡
  4. 方法归属的判断原则:是自己的就是自己的 普通读书笔记卡
  5. 序列化失败的根因是项目管理疏漏而非技术缺陷 普通读书笔记卡
  6. 类间跳转两次以内的解耦经验法则 普通读书笔记卡

06 第6章 开闭原则

  1. 开闭原则的定义 普通读书笔记卡
  2. 三种应对需求变化方案的取舍 普通读书笔记卡
  3. 变化的三种类型及其影响范围 普通读书笔记卡
  4. 开闭原则保护既有单元测试不被破坏 普通读书笔记卡
  5. 抽象约束是开闭原则的实现前提 普通读书笔记卡
  6. 元数据配置驱动的扩展方式 普通读书笔记卡
  7. 封装变化的两层含义 普通读书笔记卡
  8. SOLID缩写与开闭原则的统领地位及局限 普通读书笔记卡

07 第7章 单例模式

  1. 单例模式的定义与实现要点 普通读书笔记卡
  2. 单例模式的收益来源 普通读书笔记卡
  3. 单例模式的三个代价 普通读书笔记卡
  4. 单例模式的四类适用场景 普通读书笔记卡
  5. 懒汉式单例的线程安全隐患与clone陷阱 普通读书笔记卡
  6. 有上限的多例模式 普通读书笔记卡
  7. Spring默认Bean作用域是单例模式的工程实例 普通读书笔记卡

08 第8章 工厂方法模式

  1. 工厂方法模式的定义与命令简化原理 普通读书笔记卡
  2. 工厂方法模式同时践行三大设计原则 普通读书笔记卡
  3. 工厂方法模式的四类适用场景 普通读书笔记卡
  4. 简单工厂模式用静态方法换取简洁性 普通读书笔记卡
  5. 多工厂模式用职责清晰换取维护成本 普通读书笔记卡
  6. 用工厂方法模式替代单例模式 普通读书笔记卡
  7. 延迟初始化用缓存换取创建成本 普通读书笔记卡

09 第9章 抽象工厂模式

  1. 抽象工厂模式的定义是工厂方法的升级版 普通读书笔记卡
  2. 产品族与产品等级的区分 普通读书笔记卡
  3. 抽象工厂把产品族内部约束隐藏在工厂内部 普通读书笔记卡
  4. 产品族扩展困难是抽象工厂的核心代价 普通读书笔记卡
  5. 抽象工厂适用于一组对象共享同一约束的场景 普通读书笔记卡
  6. 产品等级横向扩展容易产品族纵向扩展困难 普通读书笔记卡

10 第10章 模板方法模式

  1. 重复代码是发现模板方法模式的信号 普通读书笔记卡
  2. 模板方法模式的两类方法 普通读书笔记卡
  3. 基本方法应设为protected以符合迪米特法则 普通读书笔记卡
  4. 模板方法模式的三点优点 普通读书笔记卡
  5. 模板方法模式颠倒了常规的抽象实现关系 普通读书笔记卡
  6. 钩子方法让子类返回值控制父类执行分支 普通读书笔记卡
  7. 模板方法模式的三类适用场景 普通读书笔记卡
  8. 模板方法模式是"父类调用子类方法"的正确实现 普通读书笔记卡

11 第11章 建造者模式

  1. 建造者模式的定义与四个角色 普通读书笔记卡
  2. 导演类把顺序决策封装成命名方法 普通读书笔记卡
  3. 建造者模式与工厂方法模式的核心区别 普通读书笔记卡
  4. 建造者模式的三点优点 普通读书笔记卡
  5. 建造者模式的四类适用场景 普通读书笔记卡
  6. 建造者模式常与模板方法模式组合使用 普通读书笔记卡

12 第12章 代理模式

  1. 代理模式的定义与三个角色 普通读书笔记卡
  2. 代理模式的三点优点 普通读书笔记卡
  3. 普通代理要求调用方只知道代理、不知道真实角色 普通读书笔记卡
  4. 强制代理由真实角色自己管理代理的产生 普通读书笔记卡
  5. 代理类可以承担超出转发的独立职责 普通读书笔记卡
  6. 动态代理用InvocationHandler接管方法实现 普通读书笔记卡
  7. 动态代理是AOP在不修改源码前提下增强行为的基础 普通读书笔记卡

13 第13章 原型模式

  1. 原型模式用对象复制替代new解决并发共享冲突 普通读书笔记卡
  2. Cloneable只是标记接口需覆写clone才真正可拷贝 普通读书笔记卡
  3. 原型模式性能优良但会跳过构造函数约束 普通读书笔记卡
  4. 原型模式的三类适用场景 普通读书笔记卡
  5. clone拷贝对象时构造函数不会被执行 普通读书笔记卡
  6. 浅拷贝与深拷贝的区别及String的特殊性 普通读书笔记卡
  7. final成员变量会阻断深拷贝实现 普通读书笔记卡

14 第14章 中介者模式

  1. 蜘蛛网状耦合是引入中介者模式的信号 普通读书笔记卡
  2. 中介者模式的定义与自发行为/依赖方法的区分 普通读书笔记卡
  3. 同事类构造函数注入而中介者用setter注入的不对称设计 普通读书笔记卡
  4. 中介者模式把依赖复杂度从对象间转移到中介者内部 普通读书笔记卡
  5. 中介者模式不是"有依赖就该用"而是"量力而行" 普通读书笔记卡
  6. 中介者模式很少用抽象类因为同事间缺乏共性 普通读书笔记卡
  7. 中介者模式的现实原型 普通读书笔记卡

15 第15章 命令模式

  1. 命令对象化避免字符串命令缺乏约束力 普通读书笔记卡
  2. 命令模式的定义与三个角色 普通读书笔记卡
  3. 命令模式的优点与命令类膨胀的代价 普通读书笔记卡
  4. 一个命令可以内部协调多个接收者协同完成 普通读书笔记卡
  5. 撤销功能的两种实现思路 普通读书笔记卡
  6. 实践中应封装Receiver减少高层模块对它的依赖 普通读书笔记卡
  7. 命令模式的适用场景判断标准 普通读书笔记卡

16 第16章 责任链模式

  1. 硬编码条件判断分发请求的四个问题 普通读书笔记卡
  2. 责任链模式的定义与传递判断机制 普通读书笔记卡
  3. 责任链融合模板方法模式让子类只关注自身业务 普通读书笔记卡
  4. 责任链模式的性能与调试代价及节点数量约束 普通读书笔记卡
  5. 责任链模式可作为需求变化的补救方案 普通读书笔记卡

17 第17章 装饰模式

  1. 用继承叠加修饰导致类爆炸与顺序僵化 普通读书笔记卡
  2. 装饰模式的定义与四个角色 普通读书笔记卡
  3. 装饰角色本质是特殊化的代理 普通读书笔记卡
  4. 装饰模式的三点优点 普通读书笔记卡
  5. 多层装饰像剥洋葱一样增加排查复杂度 普通读书笔记卡
  6. 装饰模式是继承的动态可撤销替代方案 普通读书笔记卡
  7. 装饰模式的三类适用场景 普通读书笔记卡

18 第18章 策略模式

  1. 策略模式的定义与三个角色 普通读书笔记卡
  2. 策略模式与代理模式的区别在于接口是否相同 普通读书笔记卡
  3. 策略模式的优点与全部暴露的代价 普通读书笔记卡
  4. 四种实现方案的权衡:从硬编码到策略模式 普通读书笔记卡
  5. 策略模式很少单独使用需配合工厂方法隐藏选择逻辑 普通读书笔记卡
  6. 策略模式的适用场景与策略数量阈值 普通读书笔记卡

19 第19章 适配器模式

  1. 适配器模式的定义与三个角色 普通读书笔记卡
  2. 适配器能顺利插入的前提是依赖倒置与里氏替换 普通读书笔记卡
  3. 类适配器与对象适配器的取舍 普通读书笔记卡
  4. 适配器模式的四点优点 普通读书笔记卡
  5. 适配器模式是补救模式,只适用于已投产系统扩展 普通读书笔记卡

20 第20章 迭代器模式

  1. 迭代器模式的定义与四个角色 普通读书笔记卡
  2. 迭代器模式已被语言内置,几乎不需要自己实现 普通读书笔记卡
  3. 泛型符号E与Object父类的本质区别 普通读书笔记卡
  4. 迭代器删除元素须同步移动游标 普通读书笔记卡

21 第21章 组合模式

  1. 组合模式的定义与三个角色 普通读书笔记卡
  2. 从多接口到单一抽象类的逐步精简过程 普通读书笔记卡
  3. 安全模式与透明模式的权衡 普通读书笔记卡
  4. 组合模式的优缺点与适用信号 普通读书笔记卡
  5. 用关系数据库存储树形结构才是真实的组合模式 普通读书笔记卡
  6. 增加父节点引用支持反向遍历 普通读书笔记卡

22 第22章 观察者模式

  1. 观察者模式的定义与四个角色 普通读书笔记卡
  2. 从轮询监控演化到观察者模式的三个阶段 普通读书笔记卡
  3. 观察者模式的优缺点 普通读书笔记卡
  4. 广播链问题与观察者模式跟责任链模式的区别 普通读书笔记卡
  5. Java已内置Observable简化观察者实现 普通读书笔记卡
  6. 真实项目中观察者模式的三点改造 普通读书笔记卡
  7. 发布订阅模型是观察者模式经消息队列解耦的升级版 普通读书笔记卡

23 第23章 门面模式

  1. 门面模式的定义与两个角色 普通读书笔记卡
  2. 门面模式让子系统内部变化对客户端透明 普通读书笔记卡
  3. 门面模式的三点优点与违反开闭原则的代价 普通读书笔记卡
  4. 门面模式的三类适用场景 普通读书笔记卡
  5. 一个子系统可以有多个门面 普通读书笔记卡
  6. 门面不应参与子系统内部业务逻辑 普通读书笔记卡

24 第24章 备忘录模式

  1. 备忘录模式的定义与三个角色 普通读书笔记卡
  2. 从暴露状态给高层模块到引入管理员的三阶段演化 普通读书笔记卡
  3. 备忘录模式的四类适用场景 普通读书笔记卡
  4. 备忘录的生命周期与性能注意事项 普通读书笔记卡
  5. Clone方式的备忘录融合发起人与备忘录角色 普通读书笔记卡
  6. 多状态备忘录用反射通用备份所有属性 普通读书笔记卡
  7. 多备份的备忘录支持检查点机制 普通读书笔记卡
  8. 双接口设计用宽窄接口隔离备忘录的访问权限 普通读书笔记卡

25 第25章 访问者模式

  1. 把易变的展示逻辑从元素类中抽离出来 普通读书笔记卡
  2. 访问者模式的定义与五个角色 普通读书笔记卡
  3. 访问者模式的优点与三个代价 普通读书笔记卡
  4. 访问者模式是迭代器模式无法胜任时的扩充 普通读书笔记卡
  5. 一批元素可以同时接受多个独立的访问者 普通读书笔记卡
  6. 双分派机制让操作同时由调用方和参数的实际类型决定 普通读书笔记卡

26 第26章 状态模式

  1. switch判断状态的三个问题 普通读书笔记卡
  2. 状态模式的定义与三个角色 普通读书笔记卡
  3. 具体状态类内部触发状态切换的实现方式 普通读书笔记卡
  4. 状态模式的优点与类膨胀的代价 普通读书笔记卡
  5. 状态模式的适用场景与状态数量上限 普通读书笔记卡
  6. 真实项目中的状态转移是网状而非链式 普通读书笔记卡
  7. 建造者模式与状态模式组合封装不同的转移流程 普通读书笔记卡

27 第27章 解释器模式

  1. 用公式而非直接计算应对参数组合爆炸 普通读书笔记卡
  2. 解释器模式的定义与四个角色 普通读书笔记卡
  3. 用栈解析公式字符串并组装表达式树 普通读书笔记卡
  4. 解释器模式的优点与三个代价 普通读书笔记卡
  5. 解释器模式的适用边界与现成替代方案 普通读书笔记卡

28 第28章 享元模式

  1. 用共享池解决大量相似对象导致的内存溢出 普通读书笔记卡
  2. 享元模式的定义、内外部状态与四个角色 普通读书笔记卡
  3. 享元模式的优缺点与适用场景 普通读书笔记卡
  4. 外部状态划分过粗会引发共享对象的线程安全问题 普通读书笔记卡
  5. 外部状态优先用基本类型而非自定义类 普通读书笔记卡
  6. 享元模式与对象池的区别及String.intern的例证 普通读书笔记卡

29 第29章 桥梁模式

  1. 继承把两个变化维度锁死引出桥梁模式 普通读书笔记卡
  2. 桥梁模式的定义与四个角色 普通读书笔记卡
  3. 抽象化角色构造函数强制指定实现者 普通读书笔记卡
  4. 桥梁模式的三大优点 普通读书笔记卡
  5. 判断该用继承还是桥梁模式的经验法则 普通读书笔记卡
  6. 桥梁模式的使用场景与注意事项 普通读书笔记卡

30 第30章 创建类模式大PK

  1. 工厂方法与建造者模式的意图差异 普通读书笔记卡
  2. 按产品粒度粗细选择工厂方法或建造者 普通读书笔记卡
  3. 抽象工厂与建造者模式的差异 普通读书笔记卡
  4. 工厂车间比喻区分抽象工厂与建造者的关注层次 普通读书笔记卡

31 第31章 结构类模式大PK

  1. 代理模式与装饰模式结构相同但意图不同 普通读书笔记卡
  2. 代理模式与AOP及装饰模式在JDK中的应用广度差异 普通读书笔记卡
  3. 装饰模式包装同宗对象适配器模式伪装异宗对象 普通读书笔记卡
  4. 装饰模式易扩展适配器模式是补救型架构决策 普通读书笔记卡

32 第32章 行为类模式大PK

  1. 策略模式封装完整算法命令模式解耦请求与接收者 普通读书笔记卡
  2. 命令模式支持排队撤销而策略模式不能 普通读书笔记卡
  3. 策略模式与状态模式的环境角色职责差异 普通读书笔记卡
  4. 策略模式要求算法平行状态模式要求二维状态行为耦合 普通读书笔记卡
  5. 责任链模式消息结构不变触发链允许消息形态转化 普通读书笔记卡
  6. DNS解析案例揭示责任链模式误用为触发链场景的缺陷 普通读书笔记卡

33 第33章 跨战区PK

  1. 策略模式与桥梁模式类图相同但意图不同 普通读书笔记卡
  2. 用桥墩数量快速判断策略模式还是桥梁模式 普通读书笔记卡
  3. 门面模式纯封装隔离中介者模式承担业务调和逻辑 普通读书笔记卡
  4. 子系统对门面无感知同事类对中介者了如指掌 普通读书笔记卡
  5. 包装模式群作为不干活只转发请求的模式家族 普通读书笔记卡
  6. 五种包装模式各自的一句话核心意图 普通读书笔记卡

34 第34章 命令模式+责任链模式

  1. 命令模式作为责任链模式排头兵组成命令链框架 普通读书笔记卡
  2. 用责任链模式扩展命令族只增类不改代码印证开闭原则 普通读书笔记卡
  3. 命令链框架处理组合选项的独立处理与混合处理两种思路 普通读书笔记卡
  4. 一个案例中隐藏的模板方法与迭代器模式 普通读书笔记卡

35 第35章 工厂方法模式+策略模式

  1. 工厂方法模式修复策略模式暴露具体策略类的缺陷 普通读书笔记卡
  2. 门面模式封装策略选择逻辑对外屏蔽扣款子系统复杂度 普通读书笔记卡
  3. 三种业务变化各自对应可插拔的修改点 普通读书笔记卡
  4. 并发扣款可能导致IC卡余额错乱的未处理风险 支付系统案例卡

36 第36章 观察者模式+中介者模式

  1. 单来源调用限定对象只能由指定工厂创建 普通读书笔记卡
  2. 事件分发中心身兼观察者中介者与处理者管理员三重角色 普通读书笔记卡
  3. 设计原则是方向标而非必须恪守的屏障 普通读书笔记卡
  4. 产品事件处理者三层独立扩展的架构验证 普通读书笔记卡

37 第37章 MVC框架

  1. 用策略模式让XML校验算法按环境自由切换 普通读书笔记卡
  2. 拦截器链全员执行与责任链一节点即止的关键差异 普通读书笔记卡
  3. 把中介者职责分散给各同事类自行处理的隐式中介者用法 普通读书笔记卡
  4. 用桥梁模式让视图类型与语言资源两个维度独立扩展 普通读书笔记卡
  5. 用适配器模式屏蔽第三方库对象类型对团队代码的侵入 普通读书笔记卡
  6. 高并发下单例Action改用原型模式克隆再配享元模式对象池 普通读书笔记卡

38 第38章 新模式(规格/对象池/雇工/黑板/空对象)

  1. 规格模式用规格对象封装查询条件避免接口无限膨胀 普通读书笔记卡
  2. 规格模式用与或非组合规格书并容许父类依赖子类的例外 普通读书笔记卡
  3. 规格模式的本质是组合模式与策略模式的特化应用 普通读书笔记卡
  4. 对象池模式用一次性预加载消解高并发下的重复查询瓶颈 普通读书笔记卡
  5. 对象池化本身有代价只在重建成本真正高昂时才值得引入 普通读书笔记卡
  6. 雇工模式让一组类共享通用功能而不必各自实现 普通读书笔记卡
  7. 黑板模式的拉模式与推模式两种实现及其与消息队列的等价性 普通读书笔记卡
  8. 空对象模式前提是能控制null的产生源头而非到处防御性判空 普通读书笔记卡

相关主题

暂无公开主题。