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

    第二章---观察者模式

    xzmxddx

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

    面向对象设计原则

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

    一、定义

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

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

    二、UML类图

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

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

      

  • 相关阅读:
    Centos 安装配置iscsi
    Centos 部署Keepalive高可用软件
    Centos 编译安装Haproxy
    Centos 安装 Moosefs文件系统
    docker 存储
    hadoop碰到的 一个问题
    使用curl命令操作elasticsearch
    kafka集群下线broker节点实践方法(broker topic 迁移)
    kafka 安装
    redis3.2.11 安装
  • 原文地址:https://www.cnblogs.com/xzmxddx/p/8994862.html
Copyright © 2011-2022 走看看