Python设计模式 专题
您的位置:python > Python设计模式专题 > 策略设计模式
策略设计模式
作者:--    发布时间:2019-11-20

策略模式是一种行为模式。 策略模式的主要目标是使客户能够从不同的算法或程序中进行选择以完成指定的任务。 不同的算法可以交换出入,而不会对上述任务产生任何影响。

当访问外部资源时,可以使用此模式来提高灵活性。

如何实施策略模式?

有关如何使用python实现策略模式,请参考以下代码 -

import types

class strategyexample:
   def __init__(self, func = none):
      self.name = 'strategy example 0'
      if func is not none:
         self.execute = types.methodtype(func, self)

   def execute(self):
      print(self.name)

def execute_replacement1(self): 
   print(self.name + 'from execute 1')

def execute_replacement2(self):
   print(self.name + 'from execute 2')

if __name__ == '__main__':
   strat0 = strategyexample()
   strat1 = strategyexample(execute_replacement1)
   strat1.name = 'strategy example 1'
   strat2 = strategyexample(execute_replacement2)
   strat2.name = 'strategy example 2'
   strat0.execute()
   strat1.execute()
   strat2.execute()

执行上述程序生成以下输出 -

解释说明

它提供执行输出的函数的策略列表。 这种行为模式的主要焦点是行为。


网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
373515719@qq.com
关于本站:
编程参考手册