所谓 设计模式 就是人们将开发中反复遇到的问题总结出来的解决方法。
设计源自生活,一切设计模式都可以用现实可以想象的世界来构造。如何将其中的概念、原理使用通俗易懂,更形象的话来描述,是我的初衷。
模式分类
范围目的 | 创建型 | 结构型 | 行为型 |
---|---|---|---|
类模式 | 工厂方法模式 | (类)适配器模式 | 解释器模式 模板方法模式 |
对象模式 | 抽象工厂模式 建造者模式 原型模式 单例模式 |
(对象)适配器模式 桥接模式 组合模式 装饰模式 外观模式 享元模式 代理模式 |
职责链模式 命令模式 迭代器模式 中介者模式 备忘录模式 观察者模式 状态模式 策略模式 访问者模式 |
根据目的用途分类
根据目的、用途的不同,这些模式大体上可以分成三类。
1.创建型
创建型设计模式 就是一些关于创建对象的方式。你可以根据实际情况来选择使用合适的方式来创建对象。
传统的对象创建方式 new class 可能会带来一些设计问题,或者增加设计的复杂度。
使用合适的创建型设计模式你就可以解决这个问题。
2.结构型
结构型设计模式 就是描述 如何将类和对象组合在一起形成更大的结构。
就像 搭积木,你可用通过将简单积木进行组合从而形成复杂的、功能更强大的结构。
3.行为型
行为型设计模式 就是描述 类或对象的交互以及职责分配。
根据处理范围分类
根据处理范围不同,设计模式又可以分为类模式和对象模式。
1.类模式
类模式 处理类和子类的关系,通过处理这些关系来建立继承,属于静态关系,在编译时候确定下来。
2.对象模式
对象模式 处理对象之间的关系,运行时发生变化,属于动态关系。