策略模式:它定义了算法家族,分别封装起来,让它们之间能够互相替换,次模式让算法的变化,不会影响到使用算法的客户。 算法
使用的是聚合关系单元测试
策略模式是一种定义一系列算法的方法,从概念上来看,全部这些算法完成的都是相同的工做,只是实现不一样,它能够以相同的方式调用全部的算法,减小了各类算法类与使用算法类之间的耦合。全部策略之间有一个抽象的基类,继承的类析取出这些算法中的公共功能。测试
策略模式使得客户端只须要提供更少的类。继承
策略模式,简化了单元测试,由于每一个算法都有本身的类,能够经过本身的接口单独测试。接口
策略模式就是用来封装算法的,但在实践中,咱们发现能够用它来封装几乎任何类型的规则,只要在分析过程当中听到须要在不一样时间应用不一样的业务规则,就能够考虑使用策略模式处理这种变化的可能性。方法