zoukankan      html  css  js  c++  java
  • 21种设计模式_读书笔记

    以前读的是《heade first设计模式》,现在换《设计模式(刘伟著)》来读。

    共有23种常见设计模式,以下为21种设计模式的读书笔记,遗留两种:享元模式和访问者模式。

                                         ——引言

    (一)最大收获

    最大的收获是,以前老是把“建造者模式”和"外观模式"弄混,现在终于分开弄明白了。

    书中举的例子并不恰当,搞得像是KFC套餐组装,既可以用建造者模式实现,也可以用外观模式实现。

    两者在类关系上及其相似,但在具体对象行为上有本质的区别:

    前者其实可以用汉堡包组装来描述,各个组件按照先后顺序组装为汉堡包。而且汉堡包才是最终的目的。任何一个组件不正常,那个最终目的就会无法完成。

    后者可以用KFC套餐来描述,各个组件不分先后顺序拼凑在一起,成为一个套餐。组件与组件之间没有必须聚合在一起的向心力(即:没有一个build函数把他们捏在一起)。任何一个组件表现不正常,仅表现为可用率下降(即顾客吃掉套餐中正常部分,饱腹度没有达到100%)。

    (二)基本概念

    模式分类:

    关系:

    (三)创建型模式

    简单工厂模式

    工厂模式:

    抽象工厂模式:

    建造者模式:

    原型模式

    单例模式

    (四)构造型模式

    适配器模式

    桥接模式:

    组合模式:

    装饰模式:

     外观模式:

    代理模式:

    (五)行为型

    职责模式:

    命令行模式

    迭代器模式

    中介者模式

    备忘录模式

    观察者模式:

    状态模式:

    策略模式

    模板模式

  • 相关阅读:
    nginx socket转发设置
    Linux CentOS 7 安装字体库 & 中文字体
    nginx配置location总结及rewrite规则写法
    nginx动静分离小示例
    iptables黑/白名单设置(使用ipset 工具)
    Docker logs 命令
    Docker定制容器镜像(利用Dockerfile文件)
    docker swarn集群笔记
    [国家集训队]数颜色 / 维护队列(带修莫队)
    于是他错误的点名开始了(trie树)
  • 原文地址:https://www.cnblogs.com/baimingqian/p/10549619.html
Copyright © 2011-2022 走看看