概述
-
设计模式是程序员在面对同类软件工程设计问题所总结出来的有用经验,模式不是代码而是某些问题的通用解决方案,设计模式代表了最佳的实践。这些方案是众多软件开发人员经过相当一段长的时间的实验和错误总结出来的
-
设计模式的本质提高了软件的维护性,通用性和扩展性,并降低软件复杂度
-
GOF
-
设计模式并不局限于某种语言
类型
设计模式分成三种类型,总共23种:
- 创建性模式:单例模式、抽象工厂模式、原型模式、建造者模式、工厂模式
- 结构性模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式
- 行为模式:模板方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式