适当的图形用户界面(GUI)python包布局

时间:2011-11-30 12:36:15

标签: python layout filesystems packages file-organization

在我正在开发的项目上(测试系统的GUI)我需要为所有图形对象编写基类,并将这些对象继承到使用图形对象的类中。然后在那里写入实际的工作代码。这似乎是这些GUI相关项目的标准程序。

我的问题是;所有由功能模块继承的图形对象基本文件都由Launcher脚本启动的大型机模块执行,对于包含这些脚本的文件系统,有任何推荐的布局。

我基本上是在决定:

/mainfolder ---> __init__.py
                 launcher.py
                 /MainPackage ---> __init__.py
                                  Mainframe.py
                                  Subframe_1.py
                                  Subframe_2.py
                                  /Bases ------> __init__.py
                                                 Mainframe_base.py
                                                 Subframe_1_base.py
                                                 Subframe_2_base.py

或:

/mainfolder ---> __init__.py
                 launcher.py
                 /MainPackage ---> __init__.py
                                   /Mainframe    ---> __init__.py
                                                      Mainframe.py
                                                      Mainframe_base.py
                                   /Subframe_1.py --> __init__.py
                                                      Subframe_1.py
                                                      Subframe_1_base.py
                                   /Subframe_2.py --> __init__.py
                                                      Subframe_2.py
                                                      Subframe_2_base.py

这些中的任何一个都比另一个好吗?或者是否有另一种更常用的组织模块形式?

1 个答案:

答案 0 :(得分:1)

我喜欢保持模块化,所以会选择

/mainfolder --> __init__.py
                launcher.py
                /MainPackage --> __init__.py
                                 /Mainframe  --> __init__.py
                                                 Mainframe.py
                                                 Mainframe_base.py
                                 /Subframe_1 --> __init__.py
                                                 Subframe_1.py
                                                 Subframe_1_base.py
                                 /Subframe_2 --> __init__.py
                                                 Subframe_2.py
                                                 Subframe_2_base.py

如果不是每帧1 .py。