![]()
Auf unserem Weg, einen eigenen SIP-Client zu entwickeln, entschied sich unser Team, das Projekt in C++ zu schreiben. Da eine Plattformunabhängigkeit gegeben sein muss, entschieden wir uns für Qt als GUI-Framework.
Bei Qt (sprich: “cute”) handelt es sich im engeren Sinne um eine C++ Klassenbibliothek, mit der man – einfach gesagt – grafische Oberflächen erstellen kann. Diese ähneln den klassischen Win32 MFC Oberflächen stark, jedoch ist Qt durchaus mächtiger und flexibler als das Win32 Pendant.
Vorteile
Der große, und bereits eingangs erwähnte, Vorteil lieg auf der Hand: Qt ist plattformunabhängig. Es ist für verschiedene Betriebssyteme und Grafikplattformen wie X11, Mac OS X und Windows verfügbar.
Die Entwicklungsumgebung (IDE) Qt-Creator überrascht durchaus positiv! Das Entwickeln gestaltet sich darin durchaus angenehm. Viele Entwickler bezeichnen sogar Qt-Creator als wesentlich bessere IDE als Visual Studio.
Viele Entwickler schätzen auch die gute Dokumentation von Qt und vor allem die abgeschlossene API-Philosophie des Frameworks.
Technische Fakten
Spezielle Eigenschaften von Qt werden über einen eigenen Präprozessor (MOC) in Standard-C++ übersetzt. Außerdem gibt es – nicht offizielle – Erweiterungen für Qt, die Sprachen wie Python, Ruby, C#, Java, PHP, D, Haskell, Perl, Pascal oder Ada unterstützen.
Klassischerweise werden Qt-Projekte in Windows mit mingw32 /g++ kompiliert, es gibt aber auch die Möglichkeit, die Qt-Libraries in einer Visual-Studio-Version zu installieren, wodurch man mittels AddOn relativ einfach unter Visual-Studio Qt-Projekte entwickeln und erstellen kann. Diese Wahlmöglichkeit ist vor allem von Vorteil, wenn man spezielle Libraries einbinden muss, die sich nur unter einem bestimmten Compiler kompilieren lassen konnten.
Lizenzen
Qt, das seit einigen Jahren in Besitz von Nokia ist, bietet sowohl die Möglichkeit, eine kommerzielle Lizenz zu erwerben, oder auf LGPL Basis freie Software zu entwickeln.