软考系统分析师·每日学习卡 | [日期:2025-07-03] | [今日主题:系统设计-行为型设计模式(二)]
一、今日学了啥?
-
观察者模式(Observer):定义对象间的一对多的依赖关系,当一个对象状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。典型如MVC架构。

-
状态模式(State):允许一个对象在其内部状态改变时改变它的行为。

-
策略模式(Strategy):定义一系列算法,将每个算法封装起来,并使他们可以相互替换,从而让算法可独立于使用它的用户二变化。

-
模板方法模式(Template Method):定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法的某些特定步骤。

-
访问者模式(Visitor):表示一个作用于某对象结构中的各元素的操作,使得在不改变各元素的类的前提下定义作用与这些元素的新操作。
二、重点/要记住的!
-
🔺 观察者模式:通知、自动更新
- 一个对象的改变能影响其他对象
- 发生改变的对象为观察对象,被通知的对象为观察者
- 一个观察目标可对应多个观察者
- 又叫发布-订阅模式、模型-视图模式、源-监听器模式或从属者模式

-
🔺 状态模式:状态变成类
- 有些对象具有多个状态
- 这些状态在某些情况下能相互转换
- 对象在不同的状态下具有不同的行为

-
🔺 策略模式:算法替换
- 实现某个目标的途径有多条,根据实际选择合适的途径,定义独立的类来封装不同的途径,每一个类封装一种具体的途径策略

- 实现某个目标的途径有多条,根据实际选择合适的途径,定义独立的类来封装不同的途径,每一个类封装一种具体的途径策略
-
🔺 模板方法模式:框架
- 软件开发:方法实现需要多个步骤(如请客),固定的步骤(如点单、买单)、有的不固定(如吃东西)存在可变性
- 基本方法(点单、吃东西、买单)-> 模板方法(请客)

-
🔺 访问者模式:数据和操作分离

三、今天的小收获/卡住的地方
暂不涉及
四、明天学啥?
明天开始学习软件测试
像实干家一样思考问题,像思想家一样付诸行动。
愿你我共同进步!

浙公网安备 33010602011771号