python - 在运行时构建不同执行步骤的设计模式
问题描述
我有一个类,它有 N 个内部使用的方法,这些 N 个方法可以在其他执行方法中以随机顺序组合。
class DummyOperator:
def step_1(self):
pass
.....
def step_n(self):
pass
def execute_1(self):
self.step_1()
self.step_5()
self.step_9()
self.step_2()
.....
def execute_m(self):
self.step_7()
self.step_6()
在其他一些文件中,根据配置文件调用这些执行方法之一
main.py
conf_value = get_value_from_config()
obj = DummyOperator()
execute_method = None
if conf_value == 'param_1':
execute_method = obj.execute_1
....
if conf_value == 'param_m':
execute_method = obj.execute_m
execute_method()
执行方法的数量很大并且增长很快但是这个类的分解不方便的问题,因为这N个方法适合这个逻辑实体。系统也有一堆这样的类。
你能告诉我设计这种架构的更好方法是什么,以及在运行时如何动态地构建 Operator 类的执行方法?
解决方案
推荐阅读
- php - 获取具有年份和周数的星期几的日期
- c++ - C++ 编码的 DLL 返回 #VALUE!在 Excel 上
- elasticsearch - 在弹性搜索和 Kibana 中启用安全性时无法启动 logstash
- php - 在不同的国家显示不同的时间
- github - 如何避免 Github Actions 中的代码重复;yaml中有某种循环吗?
- reactjs - React Dnd useDrag 无法正常工作?
- javascript - 显示未定义变量的问题未显示
- javascript - 为什么组件没有在 react js 中呈现?
- python - 如何删除除 OS X 携带的版本之外的所有其他 python 版本
- python - 如何解决此问题: ConnectionAbortedError: [WinError 10053] 已建立的连接已被主机中的软件中止