自从我发现Python以来,我已经使用Glade + Python + Gtk创建了四个小应用程序。对于每个文件,结构都是一个文件夹,其中包含应用程序的名称,其中包含:
现在我想知道这个组织是否是一个好习惯。因为我看过一个视频教程,其中每个窗口都有自己的“ .ui”文件和.py文件。另外,其他应用似乎也是如此组织的,Anjuta项目也似乎也遵循此规则。
此外,显示如何创建Python-Gtk-Glade应用程序的教程几乎都是一个窗口的项目...
所以我的问题是:如何组织Python-Gtk-Glade项目,或者最好的方法是什么?
谢谢。
答案 0 :(得分:1)
设置应用程序的方式取决于您的首选项(编码样式),应用程序的大小以及应用程序的用途。但是,这里有一些注意事项:
Python代码的总行数将大于1000行吗?超过1000行的文件将难以导航。我知道代码折叠,摘要等有帮助,但仍然如此。
如果您有多个GtkWindow,则分别放置每个窗口的.ui和.py。这有助于跟踪错误或添加功能。您提到了sqlite,如果文件在某种程度上是针对特定目的的,则在5年内更容易掌握文件中的sql查询。如果将对话框与父窗口放在同一ui文件中,则可以更轻松地使用set_transient_for和类似的编程。 .ui文件中包含多个GtkWindow会使拖放小部件重新排序很麻烦。
应用代码的一部分可以重用吗?如果发现要在具有不同用途的几个不同文件中复制功能,请创建一个类或函数来简化该功能(仅适用于多文件设置)。
最后,当包含.ui和.py文件的文件夹开始变大(?25-50个文件?)时,您可能想要一个包含一组具有相似功能的文件的子文件夹。这不是一成不变的。 Nemo并没有使用太多,其他人则使用。
我使用here找到的Python + Gtk积极开发自己的业务管理软件。我发现上述原理很适合我。
我认为Gtk文档通常显示单个文件设置的原因是因为它们仅是概念证明,而不是最佳应用程序管理教程。应用管理(无论如何对我而言)是反复试验,是从研究其他开源应用开始的。
免责声明:这些建议仅供我参考。它们不被Python,Gtk或Glade认可。您将需要根据用例评估这些建议。