Linux-GUI-Entwicklung
-
09-06-2019 - |
Frage
Ich habe ein großes GUI-Projekt, das ich gerne auf Linux portieren möchte.Welches Framework wird am meisten für die GUI-Programmierung unter Linux empfohlen?Sind Frameworks wie KDE/Gnome für dieses Ziel verwendbar oder ist es besser, etwas Allgemeineres als X zu verwenden?
Ich habe das Gefühl, wenn ich mich für Gnome oder KDE entscheide, verschließe ich den Markt für einen Teil des Linux-Marktes, der sich für eines entschieden hat.(Ja, ich weiß, dass es Überschneidungen gibt)
Gibt es einen besseren Weg?Oder müsste ich zwei vollständige GUI-Apps erstellen, um eine nahezu 100-prozentige Abdeckung zu erreichen?
Es ist nicht notwendig, eine plattformübergreifende Lösung zu haben, die auch unter Win32 funktioniert.
Lösung
Am besten portieren Sie es möglicherweise auf eine plattformübergreifende Widget-Bibliothek wie wxWidgets, wodurch Sie auf jede von wxWidgets unterstützte Plattform portiert werden können.
Es ist auch wichtig, zwischen Gnome-Bibliotheken und GTK sowie KDE-Bibliotheken und Qt zu unterscheiden.Wenn Sie den Code so schreiben, dass er GTK oder Qt verwendet, sollte er für Benutzer jeder Desktop-Umgebung gut funktionieren, auch für weniger beliebte Umgebungen wie XFCE.Wenn Sie andere Gnome- oder KDE-spezifische Bibliotheken verwenden, um nicht-Widget-bezogene Aufgaben auszuführen, wäre Ihre App zwischen Desktop-Umgebungen weniger portierbar.
Andere Tipps
Gnome-Apps funktionieren auf KDE-Desktops und umgekehrt;Du wirst niemanden aussperren.Was Toolkits angeht, ist es ziemlich subjektiv.Alle Toolkits sind ziemlich plattformübergreifend.Wenn Sie nicht Open Source sind, wäre GTK+ die günstigere Option, da Qt nur für die Open-Source-Nutzung kostenlos ist, während GTK+ LGPL ist.
Haben Sie darüber nachgedacht, Mono zu verwenden?Programme wie Paint.NET funktionieren hervorragend unter Linux und Windows.