zoukankan      html  css  js  c++  java
  • 观察者模式------《Head First 设计模式》

    第二章---观察者模式

    xzmxddx

      学习方式:书籍《Head First 设计模式》,这本书通俗易懂,所有知识点全部取自本书。

    面向对象设计原则

    • 封装变化
    • 多用组合,少用继承
    • 针对接口编程,不针对实现编程
    • 为交互对象之间的松耦合设计而努力
    • 类应该对扩展开放,对修改关闭
    • 依赖抽象,不要依赖具体类
    • 只和朋友交谈
    • 别找我,我会找你
    • 类应该只有一个改变的理由

    一、定义

      观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新

      我的理解:举个例子,微信公众号(主题)推送给每个已经关注的用户(观察者),微信公众号推送文章,所有已经关注的用户都会自动收到通知。

    二、UML类图

      在这里,我使用天气站(主题)推送天气信息到显示牌(观察者)的例子,一个天气站对应多个显示牌,并且每当天气情况更新,显示牌都会收到通知。

      策略模式不够精简,这里我将部分不需要的类直接合并:

      

  • 相关阅读:
    如何根据关键字匹配度排序
    LeetCode 题解目录
    Spring Boot、Cloucd 学习示例
    JavaScript工具库
    使用 Docker 部署 Spring Boot 项目
    LeetCode 寻找两个有序数组的中位数
    Bean 生命周期
    Dubbo支持的协议
    MySQL组成模块
    Spring Boot 搭建TCP Server
  • 原文地址:https://www.cnblogs.com/xzmxddx/p/8994862.html
Copyright © 2011-2022 走看看