设计模式学习(五)观察者模式

一、使用背景【动机】

  当我们需要构建一种“通知依赖关系”时,如果这种业务模型耦合度太高的时候,就不能很好的抵御新需求的变化,此时就需要用到观察者模式来进行改造了。

二、代码演示

话题类【话题】

观察者接口【抽象的观察者】

观察者实现类【具体的观察者】

观察者测试类【模拟消息的发布-订阅】

三、模式讲解

  解析:定义对象间的一种一对多(变化)的依赖关系,以便当一个对象的状态发生改变时,所有依赖(订阅)于它的对象都得到通知并自动更新。

  目的:在发布/订阅模型中,主体对象在变化的同时去通知观察者,不需要知道有多少观察者;此时观察者的数量可以根据需求进行变化,实现松耦合

原文地址:https://www.cnblogs.com/riches/p/14402006.html