为了账号安全,请及时绑定邮箱和手机立即绑定

根据不同的参数类型调用不同的实现是什么设计模式?

根据不同的参数类型调用不同的实现是什么设计模式?

千巷猫影 2019-01-02 11:09:07
比如:某系统对接了3个配送的平台,分别是平台A、平台B、平台C对于上层业务来说,只要把自己的订单(这部分属性固定)对象作为参数,以及要配送的平台,比如平台A拿过来调用接口就行了以后可能会增加平台D,在不修改接口的情况下,哪个设计模式可以做到灵活扩展的?现在能想到的是,根据这个类型,调用不同的平台,接口内写了很多if(type==A_CODE){//调用平台A的下单接口} else if(type==B_CODE){// 调用平台B的下单接口}else if(type==C_CODE){//调用平台C的下单接口}这样,想重构,有没有适合的设计模式?
查看完整描述

1 回答

?
千万里不及你

TA贡献1784条经验 获得超9个赞

策略模式是最适合的。

策略模式定义
策略模式(Strategy Pattern),将各种算法封装到具体的类中,作为一个抽象策略类的子类,使得它们可以互换。客户端可以自行决定使用哪种算法。

策略模式简单点说就是根据不同参数选择同一个接口的不同实现。

可以参考这篇文章 Java设计模式(十二) 策略模式


查看完整回答
反对 回复 2019-01-02
  • 1 回答
  • 0 关注
  • 1164 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信