OCP,SRP,DIP,LSP,SIP 的设计原则又归为一个原则:一切为了抽象,因为抽象才好降低复杂度。
面向接口是什么,接口一个规范,使用接口的client不需要知道这个接口究竟是由谁实现,怎么实现的,实现者也不知道是谁调用了它,达到解耦的目的。
OCP: 为了close于不变的抽象
SRP: 为了接口职责的单一抽象
DIP: 为了上层和下层仅依赖于抽象的中间层
LSP: 为了最大化抽象能力
SIP: 为了将不同职责分离成单个分开的抽象接口