该系列文章系个人读书笔记及总结性内容,任何组织和个人不得转载进行商业活动!
早间曾封装过一个SDK,里边多多少少使用过一定的设计模式,但是一直都没一个完整的认知,希望借对此书的学习,完成设计模式的实践,加深理解,实践更加高质量的代码;
本课程笔记总结自《深入浅出设计模式》
大纲:
共14章,每章都介绍几个设计模式,完整的涵盖了23个设计模式;
简单设计模式:Strategy/Observer/Decorator/Abstract/Factory/Factory Method/Singleton/Command/Adapter/Facade/Template Method/Iterator/Composite/State/Proxy;
复合设计模式:MVC;
简单浏览未介绍的设计模式:Bridge/Builder/Chain of Responsibility/Flyweught/Interpreter/Mediator/Prototype/Visitor;
1-4个OO基本概念(抽象 封装 继承 多态);
1-9个OO原则(Principle);
OO原则是我们的目标,设计模式是我们的做法;
本书是基于Java语言编写,但也适用于其他面向对象语言;
目录:
1.欢迎来到设计模式世界:
设计模式入门;
策略模式 共享模式 如何使用设计模式;
2.让你的对象知悉现状:
观察者模式;
出版者+订阅者=观察者模式 松耦合;
3.装饰对象:
装饰者模式;
开放-关闭原则 真实世界的装饰者:Java I/O;
4.烘烤OO的精华:
工厂模式;
实例化不应该总是公开进行,也会认识到初始化经常造成‘耦合’问题;
工厂方法模式 平行的类层级 抽象工厂模式;
5.独一无二的对象:
单件模式;
处理多线程;
6.封装调用:
命令模式;
命令模式 使用宏命令 用途-队列请求 日志请求;
7.随遇而安:
适配器与外观模式;
对象适配器 类适配器 外观模式 “最少知识”原则;
8.封装算法:
模板方法模式;
模板方法 好莱坞原则;
9.管理良好的集合:
迭代器与组合模式;
单一职责;
10.事物的状态:
状态模式;
策略模式和状态模式是双胞胎;
策略模式是围绕可以互换的算法来创建成功业务的;
状态模式则是通过改变对象内部的状态来帮助对象控制自己的行为;
状态机101 状态接口和类 状态vs策略模式;
11.控制对象访问:
代理模式;
12.模式中的模式:
复合模式;
模式-视图-控制器模式;
13.真实世界中的模式:
与设计模式相处;
14.附录:
剩下的模式;
桥接 生成器 责任链 蝇量 解释器 中介者 备忘录 原型 访问者;
学习需求:
熟悉Java语言;(如果可能的话你也可以用其他的面向对象语言进行实践)
想学习设计模式;
引起你的注意,并保持关注;(多动脑 多重复 多理解 多做笔记 多喝水!还有尽量放松)