设计模式1-设计原则
Go实现
设计原则
设计原则 | 描述 |
---|---|
单一职责原则 | 类的职责应该单一,对外提供一种功能,引起变化的也只有一种原因 |
开闭原则 | 类的改动是通过增加类代码,而不是修改业务逻辑代码 |
里氏代换原则 | 接口可以被他的实现类替换 |
依赖倒转原则 | 依赖抽象接口编程,不要依赖具体的实现类 |
接口隔离原则 | 不应该把所有的操作都封装到一个接口中 |
合成复用原则 | 继承和组合,优先用组合 |
迪米特法则 | 对象应该尽可能的少的了解其他对象,降低各个对象之间的耦合,使用一个对象,不需要了解该对象的实现原理。 |
7个设计原则可以概括:高内聚,低耦合。
然而高内聚和低耦合不可能同时满足。内聚程度越高,职责单一,但耦合度越高。耦合度越低,系统模块数量越多,内聚程度越低。开发人员应当尽量追求一种平衡,使得系统结构清晰明了,又益于拓展。
软件开发是一个不断“熵增”的过程,有限的系统架构无法满足无限增长的业务需求,这也是当下微服务盛行的主要原因。设计原则不仅仅适用于单体服务,也适用于微服务,学好设计模式是一个优秀架构师的必经之路。
本系列文章参考连接:Easy搞定Go设计模式 https://www.yuque.com/aceld/lfhu8y。