设计模式(十五):策略模式(Strategy Pattern)实际应用

要在实际项目中应用策略模式,最好先仔细了解策略模式的定义和相关概念,可参考 设计模式(九):策略模式(Strategy Pattern)

策略模式(Strategy Pattern):定义一系列算法(算法家族),并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。

使用了策略模式,在系统设计层面是满足 里氏替换原则开放封闭原则 的,每个算法可以相互替换,在不修改已有算法的情况下易于扩展。

阅读更多

设计模式(九):策略模式(Strategy Pattern)

软件开发过程中,当实现某一个功能可能需要支持多种算法或者策略(方案),例如电商促销,可以采用直接打折、满减计算、抵扣券、积分兑换 等方式,可以灵活地根据促销场景选择相应的促销方案(策略)。

每种策略都有自己的算法,选择具体的算法(策略)由客户端决定。策略模式可以将责任与算法分离,使得算法扩展更方便,易维护。

策略模式的实现方式在一定程序上可以解决和优化过多条件判断的操作,但这不是主要目的,只是附加效果。

阅读更多