一、设计模式
- 面向对象设计原则
- Java设计模式 -- 简单工厂模式
- Java设计模式--工厂方法模式
- Java设计模式--抽象工厂模式
- Java设计模式--建造者模式
- Java设计模式--原型模式
- Java设计模式--单列模式
- Java设计模式--适配器模式
- Java设计模式--桥接模式
- Java设计模式--组合模式
- Java设计模式--装饰模式
- Java设计模式--外观模式
- Java设计模式--享元模式
- Java设计模式--代理模式
- Java设计模式--职责链模式
- Java设计模式--命令模式
- Java设计模式--解释器模式
- Java设计模式--迭代器模式
- Java设计模式--中介者模式
- Java设计模式--备忘录模式
- Java设计模式--观察者类
- Java设计模式--状态模式
- Java设计模式--策略模式
- Java设计模式--模板方法模式
- Java设计模式--访问者模式
二、设计模式适用范围
- 单例模式:保证被创建一次,节省系统开销。
- 工厂模式(简单工厂、抽象工厂):解耦代码。
- 观察者模式:定义了对象之间的一对多的依赖,这样一来,当一个对象改变时,它的所有的依赖者都会收到通知并自动更新。
- 外观模式:提供一个统一的接口,用来访问子系统中的一群接口,外观定义了一个高层的接口,让子系统更容易使用。
- 模版方法模式:定义了一个算法的骨架,而将一些步骤延迟到子类中,模版方法使得子类可以在不改变算法结构的情况下,重新定义算法的步骤。
- 状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。
- 代理模式:
简单工厂:用来生产同一等级结构中的任意产品,对于增加新的产品,无能为力。
工厂方法:用来生产同一等级结构中的固定产品,支持增加任意产品。
抽象工厂:用来生产不同产品族的全部产品,对于增加新的产品,无能为力;支持增加产品族。