GTK +和Qt有什么区别?

编程语言和工具包是复杂的主题。您可能已经设法长时间使用计算机而没有考虑太多。

但是当您切换到Linux时,此问题突然变得很重要。那是因为应用程序与桌面其余部分的集成程度通常归结为一个问题:它是用GTK +或Qt制成的吗?

GTK +和Qt是什么?

GTK +和Qt是开发人员用来构建应用外观的工具包。这些工具箱提供了您在使用应用程序时看到的按钮,工具栏,滑块和菜单。

工具箱为开发人员节省了时间。他们可以不必编写代码或设计每个按钮的大小,形状和外观,而可以让工具包完成这项工作。这使他们腾出了精力,专注于应用程序提供的核心功能,例如编辑文档或播放音乐。

GTK +和Qt的历史

Haarvard Nord和Eirik Chambe-Eng开始了1991年Qt的开发。这个名字的发音“ cute"是由于Haavard的Emacs字体中字母Q的外观以及Xt先前使用字母t的原因,Xt是Unix桌面上已经使用的X工具包。

Nord和Chambe-Eng后来共同创建了Quasar Technologies,后者后来成为Throll Tech,然后是Throlltech,并以与Qt Company不同的形式存在。

1995年, Throll Tech发行了适用于Linux的Qt版本的源代码。但这不符合自由软件基金会对自由的定义,因为如果人们进行了任何修改,则不允许他们重新分发代码。直到2000年,Throlltech才使用户可以自由地自由编辑和重新分发代码。

GTK +最初是由GIMP工具箱(由Peter Mattis创建)来替代GNU Image中使用的现有界面的。操作程序。重写后,该工具包变成了GTK +,并于1998年发布。与Qt不同,人们从一开始就可以自由地编辑,修改和共享GTK +。

虽然Qt在某种程度上更具通用性,适应性强的工具包,这些早期社区围绕GTK +合并而成。还值得注意的是,非营利性GNOME基金会现在维护着GTK +,而上市公司Qt Company则负责Qt的开发。尽管如此,到目前为止,这两个工具箱都不比另一个工具箱“更免费"。

基于GTK的台式机和软件

如果您最近向Linux过渡,则可以您正在使用基于GTK的桌面的好机会。那是因为许多最佳的Linux桌面环境都使用GTK +。

使用GNOME,这是Ubuntu和Fedora和Debian等知名且成熟的Linux操作系统的默认选项。然后还有MATE和Xfce之类的替代产品,它们都提供了更轻巧,更传统的界面。

让我们不要忘记elementaryOS,elementaryOS是一个新手,与长期的Linux用户相比,它更适合于最新的切换器。

许多最受欢迎的开源应用程序可以更好地与基于GTK的桌面集成。其中包括Firefox,Thunderbird,LibreOffice和GIMP之类的程序。基于GTK的跨平台不太重要的应用程序包括AbiWord,Inkscape和Pidgin。

GTK +应用程序之间的差异越来越大。专为GNOME设计的软件即使在其他基于GTK的台式机上也可能看起来不合适。那是因为GNOME的人机界面设计指南不鼓励使用菜单栏,并引入了其他较不常见的更改。

还知道许多用于elementaryOS的应用程序不适用于其他桌面。

同时,大多数上述流行的跨平台GTK +工具仍然相对于桌面不可知(这恰好意味着它们在GNOME和elementaryOS上看起来不合适,因为它们都强调了独特的设计)。

基于Qt的桌面和软件

KDE Plasma桌面是用于Linux的最古老的全功能桌面环境。如果Qt在1996年完全开放,GNOME可能甚至不存在。在二十年后的今天,KDE社区继续提供功能最丰富的Linux桌面。

由于只有很少的其他基于Qt的桌面,许多Qt应用程序是专门为Plasma桌面设计的,甚至可能取决于各种KDE组件。因此,KDE软件集成是所有台式机中最好的。

您可以进行影响每个应用程序的界面调整,也可以特别调整一个应用程序直到感觉舒适为止。也就是说,Plasma桌面并不是唯一使用Qt的桌面。 LXQt是一种专注于更轻巧,更简单的选择。

尽管某些KDE软件是跨平台的,但这些程序在Linux社区之外并不为人所知。最值得注意的例外可能是Krita和digiKam。

并非所有Qt软件都是专门为KDE设计的。这样的程序包括VLC媒体播放器和Scribus桌面发布应用程序。

差异到底有多少?

GTK +和Qt之间存在技术差异,但其中大多数都更多开发人员比我们其他人感兴趣。如今,这些限制比以前更加难以发现。由于出色的主题设计,许多GTK +应用程序现在可以在基于Qt的Plasma桌面上在家中使用。其中某些应用程序在Plasma上比在GNOME上看起来更像是在家里。

同时,您也可以在基于GTK的桌面上安装Scribus或VLC,而无需意识到幕后的存在。

但是有时会出现一些小的不兼容性。当您寻找要打开的文件时,应用可能会打开其他文件选择器窗口。对系统主题的调整可能适用于某些应用程序,但不适用于其他应用程序。

最终,关于选择GTK +还是Qt的问题实际上归结为选择自己喜欢的桌面界面和自己喜欢的Linux应用。

标签: GTK + Linux Qt