23中设计模式已经总结完毕,是时候总结一下了。
1. 系列博文
2. 设计模式分类总结
这里不再是从结构型,行为型,创建型三个类型进行分类,而是从变化与稳定的角度中进行分类,因为变化与稳定是设计模式的最终目的,也是本次系列博文一直在贯彻的。
组件协作:
模板方法__Template Method
策略模式__Strategy
观察者模式__Observer/Event
对象性能:
单例模式__Singleton
享元模式__Flyweight
数据结构:
组合模式__composite
迭代器模式__Iterator
职责链模式__Chain of Resposibility
单一职责
装饰器模式__Decorator
桥接模式__Bridge
接口隔离
门面模式_Facade
代理模式__Proxy
中介者模式__Mediator
适配器模式__Adapter
行为变化:
命令模式__Command
访问者模式__Visitor
对象创建:
工厂模式__Factory Method
抽象工厂模式__Abstract Factory
原型模式__Prototype
建造者模式__Builder
状态变化:
备忘录模式__Memento
状态模式__State
领域问题:
解释器模式__Interpreter
上面的模式其实由于互联网发展至今,很多优秀的主流的语言,都已经在语言中有了自己模式,甚至有些设计模式由于不常用而被替代。
3. 设计模式的经验之谈
欢迎读者补充
- 不要一开始就套用模式,为模式而模式。首先应该掌握当前的需求,了解及预测变化。因为在不了解需求的时候,还不了解变化,会导致其实代码结构都还不清晰,设计模式的目的就是控制变化,提高复用。
- ……
- ……
4. 附录
每个模式的C++实现都在每个博文的最后一节,可以参考博文和博客进行关联阅读。
欢迎评论。