设计模式不是一直方法或技术,而是一种思想
学习设计模式就是要建立面向对象思想,尽可能面向接口编程
提供程序的复用性,低内聚、高耦合
要素
名字简单且有意义
知道何时使用何种模式
解决方案,知道程序的组成以及思考如何解决
能知道产生的效果与优缺点分类
创建型模式(对象创建相关) :
简单工厂、工厂方法、抽象工厂、建造者、原型、单例
结构型模式(对象组成相关) :
外观、适配器、代理、装饰、桥接、组合、亨元
行为型模式(对象行为相关) :
模版方法、观察者、状态、职责链、命令、访问者、策略、备忘录、迭代器、解释器