原文地址:Java之美[从菜鸟到高手演变]之设计模式
又一篇不错的
非原创,学习笔记而已
//链接
工厂方法模式
抽象工厂模式
单例模式
建造者模式
原型模式
适配器模式
装饰器模式
代理模式
外观模式
桥接模式
组合模式
享元模式
策略模式
模板方法模式
观察者模式
迭代子模式
责任链模式
命令模式
备忘录模式
状态模式
访问者模式
中介者模式
解释器模式
原则:
1. 对扩展开放,对修改关闭。
2. 衍生类替换掉基类,软件单位的功能不受到影响,抽象化。
3. 依赖于抽象而不依赖于具体
4. 使用多个隔离的接口,降低类之间的耦合度
5. 一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立。
6. 尽量使用合成/聚合的方式,而不是使用继承
分类:
创建型模式,共五种:
工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:
适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:
策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。