设计模式是经过长时间的工作和经验的积累总结出来的。不管是开发讨论会上还是学习交流会上,更或者面试的时候,当提及设计模式,都会或多或少的让别人高看你一眼。
设计模式分为三类:
-创建型模式 :其关心的是创建如何对象。
-结构型模式 :其关心的是类和类之间的耦合度关系,及以后维护性和代码的健壮性。
-行为型模式 :其注重代码的执行时候的行为关系。
总体分为以下23种:
- 创建型模式:
- 简单工厂模式(Simple Factory,其不属于GoF总结的23种之一)
- 工厂方法模式(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)