QT est distribué en LGPL (GPL pour les librairies) et nous permet donc de distribuer notre application avec cette même licence. Et même éventuellement de distribuer QT avec.
Le code fait avec les librairies QT est propre et lisible :
La hiérarchie des objets dans QT permet de connaître rapidement les propriétés communes aux composants graphiques (la taille, les 'setText' pour les composants contenant du texte...ect...)
De plus chacune des classes est très bien commentée (man 'nom de la classe').
Cela est du au fait que la hiérarchie d'objet a été bien conçue.
QT est une librairie impressionnante, il faudrait des mois pour en faire le tour, elle propose bien plus que du graphisme, elle propose tout ce que propose la STL entre autre...
C'est un outil de développement intégré permettant entre autre de lancer QTDesigner, un debugger, de faire des rpm pour notre application, de générer des makefile... Mais nous avons eu connaissance de cet outil un peu tard... Et ne l'avons donc pas utilisé...
Le QTdesigner permet de créer des boites de dialogue de manière graphique et génère du code XML a partir duquel nous pouvons générer des classes C++ que l'on peut étendre par héritage afin de les utiliser.
Une grande partie du code est 'dynamique', c'est à dire que nous créons des composants graphiques "à la volée" lorsque nous en avons besoin. Ces derniers doivent être écrit "à la main". L'utilisation des bibliothèques QT et leur bonne documentation permet de réaliser cela assez "simplement".
En effet ces bibliothèques ne sont pas disponibles uniquement sous linux, elles existent en fait pour les systèmes suivant :
Ce qui peut permettre un portage de notre projet sur un autre système plus aisé (à condition d'ajouter les fonctionnalités manquante au système cible: Windows ne propose pas autant d'outils en ligne de commande que linux...).