开闭原则(OpenClosedPrinciple)
2022-08-01 15:46:08 14 举报
AI智能生成
设计模式之开闭原则,如何对修改关闭,对扩展开放
作者其他创作
大纲/内容
定义
添加一个新的功能应该是,在已有代码基础上扩展代码(新增模块、类、方法等),而非修改已有代码(修改模块、类、方法等)。
举例
基于接口而非实现编程,扩展代码只需要添加实现类即可
装饰器模式,扩展添加装饰器类
模板方法模式,扩展添加子类实现
策略模式,添加策略只用添加策略类即可
参考文献
16 | 理论二:如何做到“对扩展开放、修改关闭”?扩展和修改各指什么?
找到需要扩展的扩展点,基于接口而非实现编程或其他的一些扩展性设计模式进行扩展
对参数的扩展方法为
将参数封装为对象,这样加参数时,接口就不用修改
存在批量检测的扩展为
比如报警需要批量判断tps,报错等级等
比如商家作弊判断,有商家名称、Ip、联系人电话等
策略类的判断
策略模式
可扩展的模式有
观察者模式
装饰器模式
策略模式
责任链模式
适配器模式
模板方法模式
分支主题
0 条评论
下一页