设计模式

 

目录

一、创建型

三种工厂模式区别总结

二、结构型

1、适配器模式:电源适配器适配不同电压

2、适配器模式、代理模式、外观模式的区别

3、桥接模式

4、享元模式:缓存场景

三、行为型

1、策略模式 & 状态模式的区别

2、备忘录模式

3、责任链模式

4、命令模式 

5、解释器模式:应用较少

6、迭代器模式

7、中介者模式

8、观察者模式

9、空对象模式

10、模板模式

11、访问者模式


创建型模式、结构型模式和行为型模式之间的关系

一、创建型

  1. 三种工厂模式区别总结

  2.  

二、结构型

1、适配器模式:电源适配器适配不同电压

公司内部,类和方法的命名应该有规范,最好前期就设计好,然后如果真的如你所说,接口不相同时,首先不应该考虑用适配器,而是应该考虑通过重构统一接口。

2、适配器模式、代理模式、外观模式的区别

模式的秘密-适配器模式和代理模式的区别

适配器模式和外观模式

总结:

     适配器模式:因为新旧接口不一致导致出现了客户端无法得到满足的问题,但是,由于旧的接口是不能被完全重构掉的,因为我们还想使用实现了这个接口的一些服务。那么为了使用以前实现旧接口的服务,我们就应该把新的接口转换成旧接口;实现这个转换的类就是抽象意义的转换器。

     外观模式:外观模式提供简化接口的能力,让使用者与接口内部的细节解耦,符合“最小知道原则”。

     代理模式:代理提供的接口和原本的接口是一样的,代理模式的作用是不把实现直接暴露给client,而是通过代理这个层,代理能够做一些处理。

3、桥接模式

介绍

桥接模式就是在一个物体可以从多个维度变化时,那么把这种多角度分类给分离出来,让他们独立变化,减少他们之间耦合。

4、享元模式:缓存场景

三、行为型

1、策略模式 & 状态模式的区别

策略模式:加减乘除算法封装在不同子类中

状态模式:状态间存在切换关系,一个状态结束会自动切换到下一个状态

2、备忘录模式

决策框架挂起后,将申请信息作为备忘录存在数据库,然后待重新发起后继续执行。

3、责任链模式

书店促销,满两本打8折,三本打7折,可以将不同的打折策略作为一个个的责任链节点,把客户买的书分别由各个节点进行计算,得出最优惠组合。

4、命令模式 

点烧烤的例子

https://www.cnblogs.com/ssslinppp/p/5555299.html

(1)系统需要将请求调用者请求接收者解耦,使得调用者和接收者不直接交互。

(2)系统需要在不同的时间指定请求、将请求排队和执行请求。

(3)系统需要支持命令的撤销(Undo)操作和恢复(Redo)操作

(4)系统需要将一组操作组合在一起,即支持宏命令

5、解释器模式:应用较少

6、迭代器模式

7、中介者模式

一个系统只暴露一个服务,比如三方平台暴露给商户的只有一个接口。

系统中对象之间存在比较复杂的引用关系,导致它们之间的依赖关系结构混乱而且难以复用该对象。

8、观察者模式

9、空对象模式

在空对象模式(Null Object Pattern)中,一个空对象取代 NULL 对象实例的检查。Null 对象不是检查空值,而是反应一个不做任何动作的关系。这样的 Null 对象也可以在数据不可用的时候提供默认的行为。

10、模板模式

在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。

例:web开发中,jsp页面框架是固定的,只是里面的参数是变化的,类似这种模式。

11、访问者模式

例:见大话设计模式

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值