观察者模式----有什么作用?什么时候使用?

按用途来,设计模式可分为创建型,结构型,行为型。

创建设计模式,描述如何创建对象,

结构型模式,主要用于描述如何实现类或对象组合。

行为型模式,主要用于描述类或对象怎样交互以及怎么样分配职责。

对象间的联动----观察者模式

当红灯亮起来,来往的汽车将停止;

而绿灯亮起,汽车可以继续前行。

这个过程中,交通信号灯是汽车(更准确地说应该是

汽车驾驶员)的观察者目标。

而汽车是观测者。

随着交通信号灯的变化,

汽车的行为也将随之而变化,

一盏交通信号灯可以指挥多辆汽车。

在软件系统中,有些对象之间也存在

类似交通信号灯和汽车之间的关系,

一个对象的状态或行为变化将导致其他

对象的状态或行为也发生变化,它们之间将

产生联动。

相关推荐
消失的旧时光-19435 小时前
从前端路由到 Android ARouter:观察者模式在不同平台的同一种落地
android·前端·观察者模式·flutter
山沐与山6 小时前
【设计模式】Python观察者模式:用RabbitMQ+Celery实现事件驱动
python·观察者模式·设计模式·rabbitmq
syt_10139 天前
设计模式之-观察者模式
观察者模式·设计模式
世洋Blog12 天前
SiYangUnityEventSystem,一个Unity中的事件系统
观察者模式·unity·c#·游戏引擎·事件系统
特立独行的猫a14 天前
C++观察者模式设计及实现:玩转设计模式的发布-订阅机制
c++·观察者模式·设计模式
十五年专注C++开发20 天前
sigslot: 一个轻量级实现观察者模式的C++开源库
c++·观察者模式·开源
太过平凡的小蚂蚁21 天前
观察者模式:优雅实现对象间的动态通知机制(行为模式)
观察者模式
崇文殿大学士21 天前
C# MediatR 中介者模式 观察者模式
观察者模式·c#·中介者模式
繁华似锦respect22 天前
Linux - KCP 协议深度解析:原理、与 TCP/UDP 的对比及应用场景
linux·tcp/ip·观察者模式·设计模式·udp