La version stable de Qt 6.0 a déjà été publiée

Après plusieurs mois de développement et plusieurs versions d'essai, La société Qt a lancé la branche stable de Qt 6, qui comprend des changements architecturaux importants.

La nouvelle version prétend être compatible avec les plates-formes Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1+, OpenSuSE 15.1+), iOS 13+ et Android (API 23+).

Principales nouveautés de QT 6

Des principales nouveautés qui ont été mentionnés et dans lesquels ils travaillaient, l'un d'eux est l'API graphique abstraite qui ne dépend pas de l'API 3D système opérateur. Un composant clé de la nouvelle pile graphique Qt est un moteur de rendu de scène qui utilise une couche RHI (Rendering Hardware Interface). pour fournir des applications Qt Quick non seulement avec OpenGL, mais aussi sur les API Vulkan, Metal et Direct 3D.

Il a été élaboré un module Qt Quick 3D avec API pour créer des interfaces utilisateur basé sur Qt Quick, combinant des éléments graphiques 2D et 3D. Qt Quick 3D vous permet d'utiliser QML pour définir des éléments d'interface 3D sans utiliser le format UIP. Dans Qt Quick 3D pour 2D et 3D, vous pouvez utiliser un runtime (Qt Quick), une disposition de scène et un cadre d'animation, et utiliser Qt Design Studio pour le développement d'interface visuelle.

Le module résout des problèmes tels que la lourde charge d'intégration de QML avec le contenu Qt 3D ou 3D Studio, et offre la possibilité de synchroniser des animations et des transformations au niveau de l'image entre 2D et 3D.

Une autre nouveauté est restructurer la base de code a été réalisée avec une décomposition en pièces plus petites et une réduction de la taille du produit de base. Les outils de développement et les composants personnalisés sont désormais disponibles en tant que modules complémentaires via Qt Marketplace.

D'un autre côté, nous pouvons trouver que un moteur de mise en page et des skins sont incorporés unifié pour obtenir l'apparence et la convivialité des widgets Qt natifs et des applications basées sur Qt Quick à partir de différentes plates-formes mobiles et de bureau.

Qt Quick 6 ajoute la prise en charge des styles natifs macOS et Windows (La prise en charge des styles Material et Fusion natifs pour Android et Linux a été implémentée dans Qt5). Une implémentation de style natif pour iOS est attendue dans la prochaine version significative de Qt.

La fonctionnalité de prise en charge de la plate-forme précédemment fournie par les modules QtX11Extras, QtWinExtras et QtMacExtras a été déplacée vers les API spécifiques à la plate-forme disponibles directement à partir de Qt.

La boîte à outils CMake est utilisé comme système de construction au lieu de QMake. La prise en charge de la création d'applications à l'aide de QMake est maintenue, mais Qt est désormais construit à l'aide de CMake.

En outre, transition au cours du développement vers la norme C ++ 17 (auparavant, C ++ 98 était utilisé et avec Qt 5.7 - C ++ 11) et la possibilité d'utiliser en code C ++ certaines des fonctions offertes pour QML et Qt Quick a été ajoutée. Cela inclut un nouveau système de propriétés pour QObject et les classes similaires.

Un moteur a été intégré pour travailler avec des liens de QML au cœur de Qt, permettant de réduire la charge et la consommation de mémoire des liens et de les rendre disponibles à toutes les parties de Qt, pas seulement à Qt Quick.

De l' autres changements qui se démarquent:

  • Unification des structures de données, dupliquées dans QObject et QML (réduira la consommation de mémoire et accélérera le démarrage).
  • Évitez la génération de structures de données au moment de l'exécution en faveur de la génération au moment de la compilation.
  • Masquez les composants internes à l'aide de propriétés et de méthodes privées.
    Intégration améliorée avec les outils de développement pour la refactorisation au moment de la compilation et le diagnostic des bogues.
  • Des outils ont été ajoutés pour gérer les ressources graphiques lors de la compilation, telles que la conversion d'images PNG en textures compressées ou la conversion de shaders et de maillages en binaires optimisés pour le matériel.
  • Prise en charge étendue de langages supplémentaires tels que Python et WebAssembly.
  • La gestion des chaînes et la gestion Unicode ont été considérablement améliorées.
  • Les classes QList et QVector sont fusionnées, la classe de résumé résultante utilise un modèle de conteneur QVector de type tableau.

Enfin, il devrait atteindre la parité avec Qt 5 dans le support des systèmes en temps réel dans la version Qt 6.2.

La prochaine version importante de Qt 6.1 est attendue en avril et de Qt 6.2 LTS en septembre 2021.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.