XXX【5】观察者模式

文件分割案例:

用户输入文件路径filePath和分割数量number,初始化出一个FileSplitter实例对象,然后调用split方法文件分割。

假如:我要加一个进度条的设计

抽象不能依赖于实现细节:在第6行的m_progressBar是一个进度通知的实现细节,违背了DLB(依赖倒置)原则。带来了实现细节层面发生改变的困扰。

更改:将具体的通知控件换成抽象的通知机制。

优化:

不太推荐C++的多继承,但推荐单继承一个主类后,其它继承的都是接口。

如果想支持多个观察者:

相关推荐
A.说学逗唱的Coke7 天前
【观察者模式】深入 Spring 事件驱动模型:从入门到微服务整合实战
spring·观察者模式·微服务
ysyxg9 天前
设计模式-观察者模式
观察者模式
安冬的码畜日常11 天前
【JUnit实战3_27】第十六章:用 JUnit 测试 Spring 应用:通过实战案例深入理解 IoC 原理
spring·观察者模式·设计模式·单元测试·ioc·依赖注入·junit5
czy878747511 天前
C语言实现观察者模式
c语言·观察者模式
Miqiuha21 天前
观察者模式学习
学习·观察者模式
金宗汉1 个月前
《宇宙递归拓扑学:基于自指性与拓扑流形的无限逼近模型》
大数据·人工智能·笔记·算法·观察者模式
kyle~1 个月前
设计模式---观察者模式
服务器·观察者模式·设计模式
Mr_WangAndy1 个月前
C++设计模式_行为型模式_观察者模式Observer(发布-订阅(Publish-Subscribe))
c++·观察者模式·设计模式
o0向阳而生0o1 个月前
107、23种设计模式之观察者模式(16/23)
观察者模式·设计模式
青草地溪水旁1 个月前
设计模式(C++)详解——观察者模式(Observer)(1)
c++·观察者模式·设计模式