我有一个python源文件,里面有几个类。这些类需要大致相同的导入,并相互依赖:每个类都引用其方法中的其他一些。
从语义上讲,这些类形成一个单独的模块。它们属于同一个文件。
问题在于它们已经成长。每个班级现在跨越了一百多行,这是在重构之后保持他们的方法简单。该文件导航缓慢,经常在不同点修改,难以跟踪心理。
如果我将所有这些分解为较小的文件,我会发现每个文件都有相同的导入,并且它们必须循环导入。
如何模块化此代码?
注意:这些类很大的事实并非完全糟糕的设计。它们是消息调度程序,它们可以处理每种消息的方法。有一个层次结构允许尽可能通过继承重用代码。