本文共 348 字,大约阅读时间需要 1 分钟。
面向对象的好处,是通过封装/继承/多态实现程序的高内聚低耦合,而设计模式可以使得程序更加灵活,容易扩展,并且易于复用.
策略模式是一种定义一系列算法,并将每一个算法封装起来,而且使他们可以相互替换,此模式让算法的变化,不会影响到使用算法的客户.
Strategy:定义了所支持算法的公共接口
StrategyA:封装了具体的算法或行为,继承于Strategy
Context:初始化时,进行策略对象的配置,根据配置实现不同策略算法,并维护一个对Strategy对象的引用.
使用场景:
当不同行为堆砌在一个类中,就很难避免使用条件语句来选择合适的行为,这时使用策略模式,可以很容易封装不同行为的规则.
当需要不同时间应用不同业务规则时,就应该考虑使用策略模式封装变化,减少变化可能性对程序的影响.
转载地址:http://kreub.baihongyu.com/