23种模式——策略模式

目录

策略模式
策略模式的收银软件
策略模式的特点
使用场景
优缺点
策略模式和工厂模式的结合

策略模式
本质:分离算法,选择实现。

策略模式:针对一组算法,将每一个算法封装到具有共同接口的独立的类中,使得它们可以互换。

使用策略模式可以把行为和环境分割开来。环境类负责维持和查询行为类,各种算法则在具体策略类(ConcreteStrategy)中提供。
当出现新的促销折扣或现有的折扣政策出现变化时,只需要实现新的策略类,并在客户端登记即可。

 环境(Context)角色:有一个Strategy类的引用,负责和具体的策略类交互。抽象策略(Strategy)角色:通常由一个接口或抽象类实现,给出所有的具体策略类所需的接口。具体策略(ConcreteStrategy)角色:包装了相关的算法或行为。
在策略模式中,通常是上下文使用具体的策略实现对象,反过来,策略实现对象也可以从上下文获取所需要的数据,因此可以将上下文当参数传递给策略实现对象在这种情况下,上下文封装着具体策略对象进行算法运算所需要的数据

23种模式——策略模式最先出现在Python成神之路

版权声明:
作者:Alex
链接:https://www.techfm.club/p/29474.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>