关闭→
当前位置:首页 > 职场 > 策略与模式的区别

策略与模式的区别

时间:2023-05-22 20:32:30
策略与模式的区别

策略与模式的区别

策略与模式的区别,在职场上主要看个人的工作能力,要学会良性竞争才能为自己开辟道路,职场人脉也是一点点积攒起来的,职场上的隐形陷阱是很多的,以下是策略与模式的区别文章分享。

  策略与模式的区别1

UML

状态模式是策略模式的孪生兄弟,是因为它们的UML图是一样的。但意图却完全不一样,策略模式是让用户指定更换的策略算法,而状态模式是状态在满足一定条件下的自动更换,用户无法指定状态,最多只能设置初始状态。

状态模式:

例如网购的商品订单,处于不同的状态,但是是针对同一订单的不同的状态。同一处理方法,状态切换了做的事情就不同。

策略模式:

例如聚合支付平台,有支付宝、微信支付、银联支付等,可以使用不同的支付策略。

区别:

1、状态模式重点在各状态之间的切换,从而做不同的事情;而策略模式更侧重于根据具体情况选择策略,并不涉及切换。

2、状态模式不同状态下做的事情不同,而策略模式做的都是同一件事。例如,聚合支付平台,有支付宝、微信支付、银联支付,虽然策略不同,但最终做的事情都是支付,也就是说他们之间是可替换的。反观状态模式,各个状态的同一方法做的是不同的事,不能互相替换。

3、状态模式封装了对象的状态,而策略模式封装算法或策略。因为状态是跟对象密切相关的,它不能被重用;而策略模式通过从Context中分离出策略或算法,我们可以重用它们。

《策略与模式的区别.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式