设计模式的核心思想——封装变化

设计模式出现的背景:软件设计的复杂度日益飙升。软件设计越来越复杂的「罪魁祸首」——变化

在实际开发中,不发生变化的代码可以说是概率极小的。能做的只有将这个变化造成的影响最小化 —— 将变与不变分离,确保变化的部分灵活,不变的部分稳定。这个过程就叫「封装变化」;这样的代码就是所谓的「健壮」的代码,它可以经得起变化的考验。

设计模式出现的意义:帮我们写出这样的代码。

无论创建型、结构型还是行为型,这些具体的设计模式都是在用自己的方式去封装不同类型的变化。

封装变化,封装的正是软件中那些不稳定的要素,它是一种防患于未然的行为 —— 提前抽离了变化,就为后续的拓展提供了无限的可能性,如此,我们才能做到在变化到来的时候从容不迫。


References

SOLID: https://en.wikipedia.org/wiki/SOLID

趣学设计模式: https://kaiwu.lagou.com/course/courseInfo.htm?courseId=710#/content

设计模式之美: https://time.geekbang.org/column/article/160991

设计模式: https://refactoring.guru/design-patterns

JavaScript 设计模式核⼼原理与应⽤实践: https://juejin.cn/book/6844733790204461070

JavaScript 设计模式精讲: https://www.imooc.com/read/38

configValuedasdfafadfafasdf

设计原则:https://zhuanlan.zhihu.com/p/274615347