知识卡片

封装变化:分离变化与不变

普通读书笔记卡 · 1979.r

内容

封装变化:识别变化点,对变化的职责进行分离与抽象,通过封装隐藏内部实现细节、对外公开不变的接口。要让对象内核保持稳定,就要把不稳定因素排除在外。典型体现是“分离变化与不变”:一个对象职责既有不变部分又有可变部分,就把可变部分分离出去、抽象为不变接口,再以委派形式传回原对象(如 Thread 把可变业务抽象为 Runnable 由构造传入)。这正是策略/命令模式的体现。发散:一个类里“大部分稳定、少数逻辑常改”时,别整体重写,把常改的那块抽成接口注入进来,让稳定部分免受其变化影响。

参考来源

- 位置:《解构领域驱动设计》附录A A.2.2(源文件:_epub-src/OEBPS/034.xhtml) - 结论依据:原文定义封装变化并说明“分离变化与不变”是其典型体现,对应策略/命令模式。 - 原始内容:要让对象的内核保持稳定性,就需要将不稳定的因素排除在外……将可变的部分分离出去,抽象为一个不变的接口,再以委派的形式传回原对象。