什么是设计模式?
设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。
设计模式代表作
- 《Design Patterns elements of Reusable Object-Oriented Software》
鼎鼎大名的GoF写的书,业内无人不知,建议使用过设计模式之后,再看这本书,会比较好理解,对初学者不太友好。 - 《Head First设计模式》
初学者应该阅读的书,虽然只介绍了部分的设计模式,但都是最常用的设计模式,实用,而且读起来并不会枯燥,笔者一开始也是从这本书开始的。
设计模式类型
23种设计模式,分为3种类型
类型 | 描述 |
---|---|
创建型模式 | 他们帮助一个系统独立于如何创建、组合和表示他的那些对象 |
结构型模式 | 涉及到如何组成类和对象以获得更大的结构 |
行为型模式 | 涉及到算法和对象间的职责的分配 |
创建型模式
抽象工厂模式(Abstract Factory Pattern)
生成器模式(Builder Pattern)
工厂方法模式(Factory Method Pattern)
原型模式(Prototype Pattern)
结构型模式
桥接模式(Bridge Pattern)
组合模式(Composite Pattern)
装饰者模式(Decorator Pattern)
外观模式(Facade Pattern)
享元模式(Flyweight Pattern)
代理模式(Proxy Pattern)
行为型模式
职责链模式(Chain Of Responsibility Pattern)
解释器模式(Interpreter Pattern)
中介者模式(Mediator Pattern)
备忘录模式(Memento Pattern)
观察者模式(Observer Pattern)
状态模式(State Pattern)
策略模式(Strategy Pattern)
模板方法模式(Template Method Pattern)