type
status
date
slug
summary
tags
category
icon
password

一、设计模式的规范

设计模式遵循六⼤原则;单⼀职责( ⼀个类和⽅法只做⼀件事 )、⾥⽒替换( 多态,⼦类可扩展⽗类 )、依赖 倒置( 细节依赖抽象,下层依赖上层 )、接⼝隔离( 建⽴单⼀接⼝ )、迪⽶特原则( 最少知道,降低耦合 )、开闭 原则( 抽象架构,扩展实现 ),会在具体的设计模式章节中,进⾏体现。

二、单⼀职责

定义:一个类只有一个发生变化的原因
notion image

三、示例

模拟场景:不同等级的用户可以看到不同格式的视频,vip用户可以看到1080p视频,而访客用户只能看480p视频

未有单一职责原则的设计(传统设计):

总结:违背了开背原则,对扩展开放对修改关闭。随着用户类型的增多,代码会出现多个else if的判断,代码变得非常的冗余难以维护。

单一职责原则设计:

定义接口:IVideoUserService,方法:definitionadvertisement

关系图

notion image
总结:利用多态的特性,每新增一个用户类型只需要,多创建一个用户类,去实现接口,这样保证了代码的扩展性和可维护,可读性。
 
JavaScriptJAVA【设计模式】开闭原则
IT小舟
IT小舟
微信公众号:IT小舟
公告
type
status
date
slug
summary
tags
category
icon
password
notion image
你好,我是小舟。 欢迎来到我的博客,我喜欢运动、阅读、音乐和写作。如果有什么想要交流的,可以加我微信:upcodezhou。再次感谢你的光临!
notion image