我正在考虑使用基于插件的UI架构来开发我的PyQt项目,即创建一个框架主窗口,它将动态加载所有其他UI组件,这些UI组件将作为PyQt插件制作。
由于我对PyQt很陌生,我想知道这是否是人们倾向于在GUI应用开发中遵循的良好做法。
欢迎任何更好的替代方法!
答案 0 :(得分:1)
基于插件的体系结构是设计可伸缩,可维护,可扩展的软件的一种非常强大的方法。如果你打算构建软件,你认为它的某些部分应该是插件,那就去吧,因为在python实现插件很简单。
当然,所有这些都取决于您将要构建的软件类型及其大小,如果我要构建具有固定严格要求的非常小的软件,只需要一个一组好的自定义小部件和使用内置的Qt小部件可以是一种快速的方式来交付产品。如果软件不会那么小,您也可以决定使用mvc
等模式但我认为我在这里提出的最重要建议是考虑zen of python并考虑important principles in software engineering。
正如我在本文开头所说,如果你只是想实现一个基于插件的方法,那里有几十个python框架,这里有一个小清单:
作为我可以给你的个人建议,我会专注于envisage,它提供了几个使用PyQt的例子,并且该架构与Eclipse的概念非常相似,我必须说它是一个非常强大的框架。如果您觉得上面列表中的框架太重了,您会发现像straight.plugin或pluginbase更轻松的东西。