知识卡片

解耦便于改变

普通读书笔记卡 · 1879

内容

耦合让一个变化被迫穿过多个模块,解耦则把改变限制在局部。好的接口隐藏内部决策,调用者只依赖承诺而非实现细节,这正是[[ETC价值观]]在代码结构上的体现。

参考来源

- 位置:《程序员修炼之道:通向务实的最高境界(第2版)》第5章《宁弯不折》话题28「解耦」(源文件:_epub-src/text/part0014_split_001.html) - 结论依据:原文用铁道事故式链式调用说明耦合会让隐含知识扩散到整个代码,主张让代码只处理直接知道的事情来保持解耦,直接支持卡片论点。 - 原始内容:"耦合是修改之敌,因为它将事情连接在一起,要改就得一起改。……让代码害羞一点:让它只处理直接知道的事情,这将有助于保持应用程序解耦,使其更易于变更。提示44 解耦代码让改变更容易。"