<策略模式>比<简单工厂>多了啥(行为型模式)
策略模式: 它定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户。

如上图,策略模式是一种封装策略算法的设计模式,而简单工厂模式是一种工厂类,两个风牛马不相及。
但是在使用的过程,一般是 策略模式和简单工厂相结合。 既由简单工厂 根据客户端选择提供具体方法,进行计算得到结果。
问题
简单工厂模式只是解决对象的创建问题,而且由于工厂本身包括了所有的算法策略,实际中算法策略是经常新增或修改的,每次维护或扩展策略都要改动工厂,以至于代码需要重新编译部署,这真的不是很好的办法。面对算法的时长变动,应该有更好的办法。
答案
此时应该利用反射解决 各种判断问题。从而去掉了工厂类,去掉了判断。

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号