推荐使用哪个适用于 Ubuntu 桌面的小部件工具包?

推荐使用哪个适用于 Ubuntu 桌面的小部件工具包?

据我了解,建议使用 Qt - C++ 和 QML - 或 HTML5 来编写 Ubuntu 手机应用程序。

另外,如果我错了,请纠正我,但 Python 是 Ubuntu 桌面的首选语言。这是否意味着 Python 3?

但是,我找不到任何文档说明首选哪个小部件工具包(GTK+ 或 Qt)。此外,推荐使用哪个版本/代?我对最近的 Qt 版本一无所知,但我知道 GTK+2 和 GTK+3 是不同的,并且编码也不同。我是否可以假设,如果首选工具包GTK+,我们在谈论 GTK+3?

这一页指出建议使用 PyGTK。但是,我无法说出这到底意味着什么 - 这是否意味着建议使用 Python、建议使用 GTK+,或者两者兼而有之,使用 PyGTK 进行 GTK+ 绑定?

答案1

未来: 目前还没有正式宣布。不过,Canonical 正在为其 Ubuntu 操作系统推行融合战略。这意味着,未来其使用 QML 语言(类似 javascript)和 Qt 工具包的 SDK 将成为多平台开发的首选。SDK 应该允许一个应用程序扩展到多种外形尺寸。同样值得注意的是和平号,他们正在开发的新合成窗口管理器将默认具有 Qt 绑定。

现在: 就目前情况而言,几乎所有语言和工具包都支持桌面开发。但是,Canonical 建议初学者使用 GTK+ 3.0 和 python2.7(尽管旧文档说的是 pygtk,但它实际上是 pygi - 也称为具有 gobject 自省功能的 python)。 Ubuntu 中默认的 Python 是 2.7,而不是 3.0他们为开发者创建了一个名为“quickly”的工具,让您可以轻松设计、编码、打包和分发您的应用程序。默认情况下,应用程序依赖于 pygi (GTK3),用户界面使用 Glade 设计。

您可能会注意到 GTK3 和 pyGI 目前还没有很多好的文档。 这里是一个入门的地方,但缺少很多东西。我发现我可以翻译很多C++ Gtk 文档种子文档通过一些实验将其转换为 Python 中的相应函数。通常,如果我能找到如何使用旧 pygtk 执行此操作,那么在较新的 pyGI 中也不会有太大不同。最后,您可以随时向 AskUbuntu 或 StackOverflow 发帖寻求社区帮助。

最后,ubuntu 有一些特定的 API 可以与 Unity 交互。查看开发者资源页面以了解更多信息。

答案2

据我所知,两者都是推荐的,GTK+ 和 python,使用 PyGTK 进行绑定。GTK+ 仍然是 Unity 界面中使用的主要工具包,python 是一种非常简单且功能强大的语言,使用 python 与 Unity 的集成也很容易。

答案3

如果您想要针对 Ubuntu 平台,我们建议您使用 Ubuntu SDK。如果不是,您可以使用您选择的任何语言编写软件。

答案4

Ubuntu 现在推荐使用 ubuntu 工具包。它基于 qt quick2。用此工具包编写的应用程序将支持所有 ubuntu 设备。Python 和 GTK 将可用于桌面特定应用程序

相关内容