模式分类
设计模式按照应用目标可以分为三大类型:创建型模式、结构型模式和行为型模式。
创建型模式:对对象创建过程的各种问题和解决方案的汇总,如工厂模式、单例模式、构造器模式原型模式。
结构型模式:对软件设计的结构的一个总结,重点关注类、对象继承和组合方式使用经验的总结。如桥接模式、适配器模式、装饰器模式、代理模式。
行为型模式:对类或对象之间的交互、职责划分的总结。如策略模式、解释器模式、命令模式、观察者模式、迭代器模式。
典型模式
抽象工厂
定义了一个接口用于创建相关或有依赖关系的对象族,而无需明确指定具体类,只需要传入参数就可以实例化对象。
适配器模式
适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。可以分为:类的适配器模式、对象的适配器模式、接口的适配器模式。
观察者模式
定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。主要解决一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。
代理模式
在某些情况下,一个客户类不想或者不能直接引用一个委托对象,而代理类对象可以在客户类和委托对象之间起到中介的作用,其特征是代理类和委托类实现相同的接口。