21种设计模式_读书笔记

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

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

                                     ——引言

(一)最大收获

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

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

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

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

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

(二)基本概念

模式分类:

关系:

(三)创建型模式

简单工厂模式

工厂模式:

抽象工厂模式:

建造者模式:

原型模式

单例模式

(四)构造型模式

适配器模式

桥接模式:

组合模式:

装饰模式:

 

 外观模式:

代理模式:

(五)行为型

职责模式:

命令行模式

迭代器模式

中介者模式

备忘录模式

观察者模式:

状态模式:

策略模式

模板模式

 

posted @ 2019-03-17 23:06  叶扬  阅读(325)  评论(0编辑  收藏  举报