竹迩带你玩懂设计模式(2)-设计模式一览
2017-10-31 20:22
357 查看
我经常说,学习一定要从上而下高屋建瓴的学习,所以关于设计模式,我们的GoF一共总结出来了23种,那我们就要先知道到底有哪23种设计模式,这23种设计模式直接有什么关系,找到内在的一些联系,才更有助于进行我们的学习;这也是我经常会跟大家所讲的学习的冰山模型。
整个知识体系是很庞大的,由很多个技术点组成我们的完整的学习,就像有很多座冰山我们要去消化,这是我们所谓的学习的水平维度,我们学习的广度;但是其实每座冰山在海平面下还有我们所谓的垂直领域,我们学习的深度;而且越往下,你会发现每一个技术点之间都是关联在一起的,已经分不清谁属于谁,所以我说我们要高屋建瓴的学习,其实是要求我们要先从海平面上的露出尖尖角的冰山开始融化,这是最容易理解也是切合我们的实际基于应用的,同时也是代表了我们学习的体系。
对于我们学习设计模式,也是同一个道理。我们先将露出尖尖角的涉及模式的整体有一个了解,然后回到每个设计模式本身,去加深我们应用的深度。
----------------------我是技术的分割线-----------------------------------------
回到设计模式一览,23种设计模式一共分为三大类(给大家一点好玩的图来加深印象):
就像建房子一样创建对象;
对象之间是有关系滴,就像都是房子,但是细化下来又有城堡、小木屋等,有各种各样的房子,就是城堡也是由各个房子组成的;
每个房子有不同的作用,有不同的功能;
创建对象、对象之间建立关系、对象干活,这就是我们设计模式的三大分类,下表是具体的设计模式对应的分类,在后面的文章中,我们将逐步去了解每一个设计模式,也就是慢慢的将这些冰山融化。
整个知识体系是很庞大的,由很多个技术点组成我们的完整的学习,就像有很多座冰山我们要去消化,这是我们所谓的学习的水平维度,我们学习的广度;但是其实每座冰山在海平面下还有我们所谓的垂直领域,我们学习的深度;而且越往下,你会发现每一个技术点之间都是关联在一起的,已经分不清谁属于谁,所以我说我们要高屋建瓴的学习,其实是要求我们要先从海平面上的露出尖尖角的冰山开始融化,这是最容易理解也是切合我们的实际基于应用的,同时也是代表了我们学习的体系。
对于我们学习设计模式,也是同一个道理。我们先将露出尖尖角的涉及模式的整体有一个了解,然后回到每个设计模式本身,去加深我们应用的深度。
----------------------我是技术的分割线-----------------------------------------
回到设计模式一览,23种设计模式一共分为三大类(给大家一点好玩的图来加深印象):
就像建房子一样创建对象;
对象之间是有关系滴,就像都是房子,但是细化下来又有城堡、小木屋等,有各种各样的房子,就是城堡也是由各个房子组成的;
每个房子有不同的作用,有不同的功能;
创建对象、对象之间建立关系、对象干活,这就是我们设计模式的三大分类,下表是具体的设计模式对应的分类,在后面的文章中,我们将逐步去了解每一个设计模式,也就是慢慢的将这些冰山融化。
范围 | 创建型 | 结构型 | 行为型 |
对象创建 | Singleton(单例) Prototype(原型) Factory Method(工厂方法) Abstract Factory(抽象工厂) Builder(建造者) | | |
接口适配 | | Adapter(适配器) Bridge(桥接) Façade(外观) | |
对象去耦 | | | Mediator(中介者) Observer(观察者) |
抽象集合 | | Composite(组合) | Iterator(迭代器) |
行为扩展 | | Decorator(装饰) | Visitor(访问者) Chain of Responsibility(职责链) |
算法封装 | | | Template Method(模板方法) Strategy(策略) Command |
性能与对象访问 | | Flyweight(享元) Proxy(代理) | |
对象状态 | | | Memento(备忘录) State(状态) |
其它 | | | Interpreter(解释器) |
相关文章推荐
- 设计模式---->经典设计模式一览
- Android设计模式之23种设计模式一览
- 设计模式---->经典设计模式一览
- Android设计模式之23种设计模式一览
- Android开发进阶:23种设计模式一览(设计模式教你追MM)
- Android设计模式之23种设计模式一览
- Android设计模式之23种设计模式一览
- 设计模式——经典设计模式一览
- 竹迩带你玩懂设计模式
- C++设计模式一览
- 23种设计模式一览
- 各种设计模式一览
- (2.2.1)设计模式一览
- 设计模式的理解的总结
- java单例设计模式
- 史上最全设计模式导学
- 设计模式之实现---命令模式
- 黑马程序员——单例设计模式
- 设计模式学习笔记之单件模式
- JDK 源码 阅读 - 3 - 设计模式 - 结构型模式