zoukankan      html  css  js  c++  java
  • head first 设计模式 02 观察者模式

    观察者模式 observer

    隐喻

    无处不在的类比: 类比订阅报纸, 实现观察者模式 1. 报社出版报纸    2. 向某家报社订阅报纸, 只要他们有新报纸出版, 就会给你送来, 只要你是他们的客户, 你就一定会一直收到报纸.    3. 当你不再想看报纸的时候, 取消订阅, 他们就不会再送报纸过来.    4. 只要报社还在运营, 就会一直有人(或单位)向他们订阅和取消报纸.

    好处

    使用观察者的好处是减少了观察者之间的耦合, 每个观察者直到目标就可以了, 无需关系其他的观察者, +    同时, 发布者也不用具体关心观察者, 只要维护一个观察者的序列就可以了( 增加, 减少)   

    例子

    气象站   问题描述, 希望建立一个公告板, 对气象站的检测的温度, 湿度, 气压对某些特定公司进行通报, (现况板, 通告板)

    image

    image

    增加观察者- 可复用

    image

    image

    image

    删除观察者-可复用

    image

    image

    image

    - 定义观察者模式

      当你试图勾勒观察者模式时,可以利用报纸订阅服务,以及出版者和订阅者比拟这一切。

    image

    image

    image

    - 例子

    image

    image

    image

    image

    image

    image

    image

    image

    image

  • 相关阅读:
    ubuntu 启动 卡死在 clean ... file ... blocks
    realsense opencv example 运行时无显示退出
    realsense example 最简单编译
    python内置方法
    接口自动化测试框架
    git使用问题
    自动化测试工具原理
    四层协议网络传输
    字符串反转
    排除链接数性能瓶颈
  • 原文地址:https://www.cnblogs.com/moveofgod/p/3066262.html
Copyright © 2011-2022 走看看