《Head First 设计模式》读书笔记(12)—— 复合模式 Compound

本文共5000词,阅读需要30分钟,本文相关代码地址被托管在 gitee

很多优秀的威力强大的设计模式会同时使用多个设计模式,这就是模式的模式——复合模式。
大多数流行的设计模式都是复合模式,同时用到几个模式,并且解决了一类通用的问题,比如MVC(很期待作者从设计模式怎么理解MVC,因为Spring MVC很普遍,但是这回要从根上看不知道会看到什么)。

继续阅读“《Head First 设计模式》读书笔记(12)—— 复合模式 Compound”

《Head First 设计模式》读书笔记(9)—— 迭代器与组合模式 Iterator and Composite

本文共7000词,阅读需要20分钟,本文相关代码地址被托管在 gitee,这一章的组合模式的外部迭代器有点难懂

有很多地方可以把对象堆起来成为一个集合,比如数组,堆栈,列表或者散列表(hashtable)
但是如果你想遍历这些对象,你肯定不希望别人看着你如何实现这个集合,因为这样极其不专业
最好应该是客户能够遍历你的集合到那时无法窥探你的存储方式。

继续阅读“《Head First 设计模式》读书笔记(9)—— 迭代器与组合模式 Iterator and Composite”

《Head First 设计模式》读书笔记(8)—— 模板方法模式 template

本文共2500词,阅读需要10分钟,本文相关代码地址被托管在 gitee

背景一:其实咖啡和茶的冲泡方法很相似

两者都是把水煮沸,放进去茶叶或者咖啡然后泡好倒出来以后再加入牛奶等一些配料
你可以分别写出一个做咖啡的类和泡茶的类,你会发现两者非常类似,重复代码很多,所以我们应该将这些共同的部分剥离出来,放进一个基类里。

继续阅读“《Head First 设计模式》读书笔记(8)—— 模板方法模式 template”

《Head First 设计模式》读书笔记(7)——适配器模式与外观模式 Adapter and Facade

本文共2700词,阅读需要15分钟,本文相关代码地址被托管在 gitee,中间因为其他事情,20天才看完这一章,,,,

生活中的适配器

总所周知,在中国通用的电压时 220V,而美国电压则是 110V,如果有经常在美国和中国之间跑的 IT 人,而其笔记本都是随身携带的,那么它的笔记本的电压问题如何解决呢?

继续阅读“《Head First 设计模式》读书笔记(7)——适配器模式与外观模式 Adapter and Facade”

《Head First 设计模式》读书笔记(6)——命令模式 Command

本文共5500词,阅读需要15分钟,本项目相关代码地址被托管在 gitee

命令模式是将具体的一个或一组操作封装成一个独立命令的设计方法。
所有命令都实现同一个Command接口和其中的execute方法,调用者找到需要处理的命令并调用execute方法执行。

继续阅读“《Head First 设计模式》读书笔记(6)——命令模式 Command”

《Head First 设计模式》读书笔记(5)——单件模式 Singleton

本文共2376词,阅读需要8分钟,本项目相关代码地址被托管在 gitee

关于饿汉和懒汉,经常听见这两个词,尝试辨别一下:
懒汉:就是类加载时,不急着初始化,而是等着判断好需不需要初始化,在决定。主要源于lazy loading这个词
饿汉:就是类一加载就初始化,但是因为静态成员,所以不存在线程问题。

一般说,习惯还是单例模式,实现它的关键一环就是他没有公开的构造器
目的:用来创建独一无二的,只能有一个实例的对象的入场券。
继续阅读“《Head First 设计模式》读书笔记(5)——单件模式 Singleton”