【设计模式】设计原则
2022/12/27 16:38:22
设计原则和编程技巧
单一职责原则(SRP)
就一个类而言,应该仅有一个引起它变化的原因。
在 JavaScript
中,更多的体现在方法和对象上,具体说就是:一个方法只做一件事情。
如果一个方法承担了过多的职责,那么在需求的变迁过程中,需要改写这个方法的可能性就越大。
最少知识原则(LKP)/迪米特法则(LoD)
软件实体应当尽可能少地与其他实体发生互相作用。
方法、对象之间依赖越少越好。
中介者模式就是 LKP 原则的体现。
开放-封闭原则(OCP)
软件实体(类、模块、函数等)应该是可以扩展的,但是不可修改。
当代码中出现大量的 if-else 或 switch-case 语句时,应该在第一时间考虑能否利用对象的多态性来重构它们。
出现大量分支时,如果有需求变更就必须去理解原有分支并且在分支上修改,这就违背了 OCP 原则。