Antworten:
Im Allgemeinen sollte der Unterschied aus Anwendersicht rein kosmetischer Natur sein. Qt und GTK stellen Themen unabhängig voneinander ein (z. B. über qtconfig
oder gtk-chtheme
), dies wird jedoch von einigen Desktop-Umgebungen harmonisiert.
GNU / Linux ist in dem Sinne tendenziell mehr GTK-orientiert als Qt, in dem Sinne, dass ersteres häufiger verwendet wird. Sie können es also vorziehen, wenn Sie die Wahl haben. Eine Ausnahme wäre KDE, das Qt für seine eigenen Anwendungen verwendet - obwohl keiner dieser Faktoren sehr wichtig ist.
Ein wichtigeres Problem wäre in Kontexten mit sehr begrenztem RAM (wie in <1/4 GB); In diesem Fall möchten Sie wahrscheinlich, dass das System ausschließlich GTK oder Qt verwendet, aber nicht beide. Bei den meisten modernen Desktops mit Gigabyte Arbeitsspeicher ist dies jedoch kein Problem - die Verwendung von beidem kostet Sie möglicherweise 50 bis 100 MB zusätzlich.
Beachten Sie, dass es auch verschiedene Versionen von GTK (2 und 3) und Qt (3 und 4) gibt, die immer noch weit verbreitet, jedoch nicht abwärtskompatibel sind (eine Qt 3-Anwendung kann also keine Qt 4-Bibliotheken verwenden). Es kann jedoch sein, dass beide Versionen gleichzeitig auf einem System vorhanden sind. Die schwerwiegendste Folge davon ist die Gefahr von Verwirrung und ein bisschen mehr Speicherplatz.
Nein, es gibt keinen Unterschied in der internen Struktur solcher Programme. GTK und Qt sind Toolkits und Frameworks für Benutzeroberflächen. Dies sind Bibliotheken, mit denen die Entwickler grafische Oberflächen entwerfen.
Wenn ein grafisches Programm (GUI) geschrieben wird, werden zuerst seine Kerninternale entwickelt. Dies ist es, was das Programm zum Laufen bringt. Man sieht nie den Kern, sie werden einfach im Hintergrund ausgeführt. Auf diesem Kern wird eine Benutzeroberfläche (User Interface, UI) entwickelt.
Jetzt konnten die Entwickler die gesamte Benutzeroberfläche von Grund auf neu entwerfen oder von anderen erstellte Designs wiederverwenden. Die Wiederverwendung von Design hat einen großen Vorteil. Dadurch sehen alle Programme auf Ihrem Computer ähnlich aus. Daher verwenden sie GUI-Toolkits. GTK und Qt sind zwei sehr verbreitete GUI-Toolkits.
GTK ist das Standard-Toolkit für GNOME, während Qt von KDE verwendet wird. Aus Sicht des Benutzers unterscheidet sich nur das Aussehen. Das Programm bleibt im Kern dasselbe.
Ein weiterer wichtiger Aspekt, der berücksichtigt werden muss, ist der Qt-Lizenzierungslink zu ihrer Lizenzoffenlegung, der ausdrücklich für die meisten gemeinnützigen Projekte frei verfügbar sein soll. In diesem Fall ist jedoch eine Geschäftsbeziehung möglich und unter Umständen mit Einschränkungen verbunden. Während GTK ausdrücklich erklärt, dass es auch in proprietären Anwendungen frei verwendet werden kann, erklärt GTK :
Are there any licensing restrictions?
GTK is free software and part of the GNU Project. However, the licensing terms for GTK, the GNU LGPL, allow it to be used by all developers, including those developing proprietary software, without any license fees or royalties.
Ein Schlüsselaspekt bei der Entwicklung komplexer Benutzeroberflächen ist GLADE als Design-Kit, und ob dies zu Ihrer Annäherung an Glade Link passt . Es soll plattformübergreifend sein, wird jedoch möglicherweise nicht so umfassend unterstützt wie Qt.