借鉴自https://www.runoob.com/design-pattern/design-pattern-intro.html
设计模式六大原则
-
开闭原则
对扩展开放,对修改关闭。在程序进行拓展的时候不能去修改原有的代码,实现一个热插拔的效果。实现开闭原则的关键步骤就是抽象化
-
里式代换原则
任何基类可以出现的地方,子类一定可以出现。此原则是对实现抽象化的具体步骤的规范
-
依赖倒转原则
开闭原则的基础:接口依赖于抽象而不依赖于抽象
-
接口隔离原则
使用多个隔离的接口比使用单个接口要好,实现低耦合
-
迪米特法则(最少知道原则)
一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块相对的独立
-
合成复用原则
尽量使用合成/聚合的方式,而不是使用继承
根据设计模式参考书中总共有23中设计模式:创建型模式、结构性模式、行为模型
j2ee是额外讨论
创建型模式
这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用new运算符直接实例化对象。这使得程序在判断针对某个实例需要创建哪些对象时更加灵活
- 工厂模式
- 抽象工厂模式
- 单例模式
- 建造者模式
- 原型模式
结构型模式
这些设计模式关注类和对象的组合。继承的概念被用来组合接口和定义组合对象获得新功能的方式
- 适配器模式
- 桥接模式
- 过滤器模式
- 组合模式
- 装饰器模式
- 外观模式
- 代理模式
行为型模式
这些设计模式特别关注对象之间的通信
- 责任链模式
- 命令模式
- 解释器模式
- 迭代器模式
- 中介者模式
- 备忘录模式
- 观察者模式
- 状态模式
- 空对象模式
- 策略模式
- 模板模式
- 访问者模式
j2ee模式
这些设计模式特别关注表示层。这些设计模式又sun Java center 鉴定的
- mvc模式
- 业务代表模式
- 组合实体模式
- 数据访问对象模式
- 前端控制器模式
- 拦截过滤器模式
- 服务定位模式
- 传输对象模式