什么是设计模式
每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样你就能一次又一次地使用该方案而不必做重复的劳动。
– Christopher Alexander
一般而言,设计模式有四个基本要素
模式名称 (name)
一个助记名,它用一两个词来描述模式的问题,解决方案和效果。
问题 (problem)
描述了应该在何时使用模式。它解释 了设计问题和问题存在的前因后果,它可能描述了特定的设计问题,如怎样用对象表示算法等。
解决方案 (solution)
描述了设计组成部分,它们之间的相互关系及各自的职责和协作方式。
效果 (consequences)
描述了模式应用的效果及使用模式应权衡的问题。
一个设计模式的命名、抽象和确定了一个通用设计结构的主要方面,这些设计结构能被用来构造可复用的面向对象设计。设计模式确定了所包含的类和实例,它们的角色、协作方式以及职责分配。
设计模式分类
23种设计模式
- 创建型模式(简单工厂模式不是GoF总结出来的23种设计模式之一)
简单工厂模式(Simple Factory)
工厂方法模式(Factory Method)
抽象工厂模式(Abstract Factory)
创建者模式(Builder)
原型模式(Prototype)
单例模式(Singleton) - 结构型模式
外观模式(Facade)
适配器模式(Adapter)
代理模式(Proxy)
装饰模式(Decorator)
桥模式(Bridge)
组合模式(Composite)
享元模式(Flyweight) - 行为型模式
模板方法模式(Template Method)
观察者模式(Observer)
状态模式(State)
策略模式(Strategy)
职责链模式(Chain of Responsibility)
命令模式(Command)
访问者模式(Visitor)
中介者模式(Mediator)
备忘录模式(Memento)
迭代器模式(Iterator)
解释器模式(Interpreter)
2017年01月19日 16时19分37秒