对于我目前的工作,我正在编写一些长时间运行(考虑数小时到数天)的脚本,这些脚本执行 CPU 密集型数据处理。程序流程非常简单——进入主循环,完成主循环,保存输出并终止:我的程序的基本结构往往是这样的:
<import statements>
<constant declarations>
<misc function declarations>
def main():
for blah in blahs():
<lots of local variables>
<lots of tightly coupled computation>
for something in somethings():
<lots more local variables>
<lots more computation>
<etc., etc.>
<save results>
if __name__ == "__main__":
main()
这很快就会变得难以管理,所以我想将它重构为更易于管理的东西。我想让它更易于维护,而不牺牲执行速度。
然而,每一段代码都依赖于大量变量,因此将部分计算重构为函数会使参数列表很快变得失控。我应该将这种代码放入python类中,并将局部变量更改为类变量吗?从概念上讲,将程序变成一个类并没有多大意义,因为该类永远不会被重用,并且每个实例只会创建一个实例。
这种程序的最佳实践结构是什么?我正在使用python,但假设现代面向对象的语言特性,这个问题相对语言无关。