这是关于类继承的正确顺序的一些基本问题。
基本上我正在尝试编写一个数值模拟来解决一个物理模型,细节并不重要(我碰巧用python写这个),它是一个众所周知的算法,通过迭代空间体积来解决。
我认为我需要的课程是:
- 设置:定义所有模拟参数的类,如体积大小,并具有检查参数类型是否正确、计算派生参数等的方法。
- Solver:包含求解的实际算法
- 输出:包含所有绘图输出的句柄,并可以访问保存文件等。
我还需要一个运行方法,它可以运行求解器并定期(在设置中定义的周期)运行一些输出函数。
- 在一个高质量的程序中,哪个类将从哪个继承?(我猜输出继承自 Solver 继承自 Setup)
- run 方法属于哪里?也许应该有一些额外的基类,比如用户与之交互并包含运行方法的接口?