写点什么

第 2 周总结 - 架构中的设计模式

用户头像
潘涛
关注
发布于: 2021 年 01 月 08 日

面向对象设计的目标

高内聚、低耦合

易扩展、可移植、更简单

实际情况是需求总在变化,你的程序如何应对这些变化?


OOD 遵循的原则

原则一:开闭原则 OCP

即:对修改关闭,对扩展开放

实现开闭原则,可以使用很多方法,比如以下常见的设计模式:

策略模式

适配器模式

观察者模式


原则二:依赖倒置原则 DIP

依赖倒置原则.note

即:高层不依赖低层,而应该由高层进行抽象,由低层去实现

它是架构师的核心技能

框架的核心是遵循好莱坞原则:Don't Call Me, I'll Call You.

应该由框架主动调用代码,而不是代码调用框架。即:框架定义接口,代码去实现框架,就可以达到框架主动调用代码的效果。

原则三:里氏替换原则 LSP

即:凡是使用基类的地方,一定也适用于其子类。用于判断,在父类、子类场景中,子类可以完全替换父类,就是符合 LSP

不满足 is a 关系的继承,一定不符合 LSP,例如:正方形 is a 长方形吗?

出现不符合 LSP 的征兆:功能退回;子类定义父类未定义的异常;

继承和组合是 OOP 的两种手段

原则四:单一职责原则 SRP

即:一个类只提供单一的功能。当一个类的逻辑太多的时候,就可以考虑优化。

原则五:接口隔离原则 ISP

定义多个职责单一的接口,但是由一个实现类去实现他们,对外暴露多个接口。实现接口隔离原则,保证:不强迫,不同的应用程序必须看到用到他不需要的方法/内容

用户头像

潘涛

关注

还未添加个人签名 2020.02.25 加入

还未添加个人简介

评论

发布
暂无评论
第2周总结-架构中的设计模式