设计模式学习顺序

顺序设计模式常用程度适用层次引入时机复杂度变化实现体现的原则
1Factory Method很常用代码级编码时简单子类的实例化对象的创建工作延迟到子类开闭原则
2Singleton很常用代码级、应用级设计时、编码时简单唯一实例封装对象产生的个数
3Facade很常用应用级、构架级设计时、编码时简单子系统的高层接口封装子系统开闭原则
4Template Method很常用代码级编码时、重构时简单算法子步骤的变化封装算法结构依赖倒置原则
5Abstract Factory较常用应用级设计时较复杂产品家族的扩展封装产品族系列内容的创建开闭原则
6Composite较常用代码级编码时、重构时较复杂复杂对象接口的统一统一复杂对象的接口里氏代换原则
7Proxy较常用应用级、构架级设计时、编码时简单对象访问的变化封装对象的访问过程里氏代换原则
8Command较常用应用级设计时、编码时较简单请求的变化封装行为对对象开闭原则
9Observer较常用应用级、构架级设计时、编码时较简单通讯对象的变化封装对象通知开闭原则
10Strategy较常用应用级设计时一般算法的变化封装算法里氏代换原则
11Builder一般代码级编码时一般对象组建的变化封装对象的组建过程开闭原则
12Adapter一般代码级重构时一般对象接口的变化接口的转换
13Bridge一般代码级设计时、编码时一般对象的多维度变化分离接口以及实现开闭原则
14Decorator一般代码级重构时较复杂对象的组合职责在稳定接口上扩展开闭原则
15Iterator一般代码级、应用级编码时、重构时较简单对象内部集合的变化封装对象内部集合的使用单一职责原则
16Mediator一般应用级、构架级编码时、重构时一般对象交互的变化封装对象间的交互开闭原则
17Memento一般代码级编码时较简单状态的辅助保存封装对象状态的变化接口隔离原则
18State一般应用级设计时、编码时一般对象状态的变化封装与状态相关的行为单一职责原则
19Visitor一般应用级设计时较复杂对象操作变化封装对象操作变化开闭原则
20Prototype不太常用应用级编码时、重构时较简单实例化的类封装对原型的拷贝依赖倒置原则
21Flyweight不太常用代码级、应用级设计时一般系统开销的优化封装对象的获取
22Chain of Resp.不太常用应用级、构架级设计时、编码时较复杂对象的请求过程封装对象的责任范围
23Interpreter不太常用应用级设计时较复杂领域问题的变化封装特定领域的变化
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AllenLeungX

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值