Qt
| |
---|---|
Basisdaten
| |
Maintainer | Volker Hilsheimer |
Entwickler | Qt Project[1], The Qt Company |
Erscheinungsjahr | 20. Mai 1995 |
Aktuelle Version | 6.8[2] (8. Oktober 2024) |
Betriebssystem | Unixartige mit X11, Linux mit Wayland[3], Windows, Windows Phone, Windows RT, Windows CE, Symbian OS (bis Qt 4.8[4][5]), Android, SailfishOS, macOS, iOS, QNX/Blackberry 10[6] |
Programmiersprache | C++ |
Kategorie | GUI-Toolkit |
Lizenz | Duales Lizenzsystem Proprietär und GPL Version 3, LGPL Version 2.1,[7] LGPL Version 3[8] |
deutschsprachig | ja |
qt.io |
Qt ([englisch cute[9]) ist ein Anwendungsframework und GUI-Toolkit zur plattformübergreifenden Entwicklung von Programmen und grafischen Benutzeroberflächen. Darüber hinaus bietet Qt umfangreiche Funktionen zur Internationalisierung sowie Datenbankfunktionen und XML-Unterstützung an und ist für eine große Zahl an Betriebssystemen bzw. Grafikplattformen wie X11 (Unix-Derivate), macOS, Windows, iOS und Android erhältlich. Qt wird insbesondere vom KDE-Projekt in den Bibliotheken der KDE Plasma Workspaces und der KDE Frameworks verwendet, die gleichzeitig die prominentesten Vorzeigebeispiele darstellen.
] wieQt ist quelloffen und mehrfachlizenziert: für Open-Source-Programmierung unter der GNU General Public License (GPL) und ab Version 4.5 zusätzlich unter der GNU Lesser General Public License (LGPL); für die Nutzung in nicht quelloffenem Code sind kommerzielle Lizenzen erhältlich.
Qt ist in C++ entwickelt und verwendet einen Präprozessor, genannt moc (meta object compiler), womit C++ um zusätzliche Elemente erweitert wird, beispielsweise Signale und Slots sowie Introspektion. Der so erzeugte Quelltext folgt dem C++-Standard, so dass er mit handelsüblichen Compilern übersetzt werden kann. Es gibt auch Anbindungen für andere Programmiersprachen, die größtenteils von der Community bzw. von Drittanbietern zur Verfügung gestellt werden, unter anderem für Python (PyQt, PySide), Ruby (QtRuby), C# (Qyoto-Projekt, QtSharp), Java (Qt Jambi), PHP (PHP-Qt), D (QtD), Haskell (Qtah), Perl (PerlQt), Pascal (Qt4Pas) und Ada (QtAda).