Sortie de Qt 5.5 Alpha
Beaucoup de nouveautés sur les fonctionnalités 3D et Qt Quick ainsi que la stabilisation de l'existant

Le , par arnolddumas

22PARTAGES

6  0 
Qt 5.5 alpha est disponible depuis peu. Le principal objectif de cette nouvelle version est l'amélioration et la stabilisation des fonctionnalités existantes, mais de nouvelles fonctionnalités font aussi leur apparition. Avec Qt 5.5, Canvas 3D est totalement supporté et le très attendu Qt 3D est inclus en qualité d’avant-première technologique. Qt 5.5 facilite la cartographie au travers du nouveau module Qt Location, lui aussi en qualité d’avant-première technologique. Cette version alpha de Qt 5.5 est un premier pas vers la version finale de Qt 5.5, prévue pour mai, avec un mois de retard sur le planning initial.

Stabilisation et amélioration de l'existant

Les précédentes versions de Qt 5 ont apporté la compatibilité avec de nouvelles plates-formes ainsi que de nouvelles fonctionnalités. Avec Qt 5.5, les équipes de développement se sont concentrées sur la stabilité ainsi que l'amélioration des fonctionnalités existantes. La plupart des nouvelles fonctionnalités sont mineures ou portent des API existantes sur de nouvelles plates-formes. Qt 5 constitue une fondation solide et cela sera d'autant plus vrai avec Qt 5.5.

En plus des améliorations apportées à Qt en lui-même, les systèmes d'assurance qualité et d'intégration continue testent maintenant de plus en plus de plates-formes et de configurations différentes. Avec Qt 5.5, le système d'intégration continue et de publication permet maintenant de sortir de nouvelles versions de patch (Qt 5.5.x), même après la sortie de Qt 5.6.

Qt 3D et Qt Canvas 3D


Une des fonctionnalités les plus attendues de Qt 5.5 est la préversion de Qt 3D 2.0. De gros efforts ont été consentis à ce sujet, notamment de la part des développeurs de KDAB. Ce module Qt 3D 2.0 est maintenant prêt pour les tests. Depuis de nombreuses années, Qt a été utilisé pour développer des applications 3D de renommée, mais Qt 3D facilite plus que jamais l'intégration et l'utilisation de contenu 3D dans vos applications Qt. Ce module fournit une API C++ ainsi qu'une API QML pour intégrer du contenu 3D dans tout type d'application et permet d’utiliser OpenGL 2, 3 et 4 ainsi qu'OpenGL ES 2 et ES 3. Pour plus de détails sur ce qu'apporte Qt 3D 2.0, vous pouvez consulter la documentation de Qt 3D ainsi que cette série d'articles publiés sur le blog de KDAB.

En plus de Qt 3D, toujours dans le domaine de la 3D, Qt Canvas 3D sort, avec cette nouvelle version, de son statut d’avant-première technologique. Avec ce nouveau module léger, il devient très facile de faire des appels à des fonctions 3D à la « WebGL » depuis un contexte Qt Quick / JavaScript, permettant d'utiliser facilement des ressources WebGL par-dessus Qt Quick. Pour beaucoup de besoins dans le domaine 3D, cela permet de tirer parti d'applications écrites en HTML5 / WebGL.

Qt Location


Encore un autre module attendu depuis longtemps, ajouté à Qt 5.5 en qualité d’avant-première technologique, Qt Location. Ce module apporte des fonctionnalités de cartographie, de géocodage, de géocodage inverse, de routage ainsi que de placement à Qt. Il est maintenant aisé d’utiliser des fonctions de cartographie dans des applications développées avec Qt. Ce module exploite les données géographiques de différents fournisseurs, comme Open Street Map, Mapbox ou Here Maps.

Qt Multimedia


Qt Multimedia utilise maintenant GStreamer 1.0 et ajoute de nombreuses nouvelles fonctionnalités. Une des fonctionnalités les plus intéressantes est un nouveau cadre de travail concernant le filtrage vidéo. Ce dernier facilitera l'intégration de bibliothèques comme OpenCV ou de bibliothèques de calcul comme OpenCL ou CUDA, via les éléments VideoOutput. Qt Multimedia se voit par ailleurs adjoindre une nouvelle API pour contrôler les paramètres du viseur et gère mieux la caméra sous iOS.

Qt Quick et les contrôles Qt Quick


Qt 5.5 introduit un nouveau contrôle, TreeView. Par ailleurs, tous les contrôles précédemment fournis dans la version commerciale (CircularGauge, DelayButton, Dial, Gauge, PieMenu, StatusIndicator, ToggleButton, Tumbler et TumblerColumn) sont maintenant disponibles dans la version libre. Ces anciens contrôles sont maintenant disponibles grâce à l'import QtQuick.Extras.

Le rendu dans un fil d'exécution distinct via QQuickRenderControl est maintenant possible. Sous Windows, Qt Quick est maintenant traité par défaut dans la boucle de rendu parallèle de Qt Quick lorsqu'OpenGL est utilisé. Le pavé tactile d'OS X est maintenant mieux pris en charge, le pincement est maintenant géré via PinchArea, tout comme le zoom intelligent qui fait son apparition dans cette version.

Le moteur de Qt Quick gère maintenant les tableaux typés de JavaScript. Il est maintenant facile d'exposer des types C++ définis par l'utilisateur dans un contexte JavaScript / QML et dans le QJSEngine. En outre, le moteur Qt Quick a reçu différentes améliorations des performances.

Mise à jour de Qt WebEngine et de Qt WebView


Qt WebEngine a été mis à jour et contient maintenant la version 40 de Chromium, qui ajoute de nouvelles API. Qt WebEngine expose maintenant des API concernant le téléchargement de fichiers, la géolocalisation, le cache et les cookies, mais aussi les paramètres. Par ailleurs, de nombreuses API précédemment marquées comme expérimentales sont maintenant publiques. Qt WebChannel a été intégré dans la communication interprocessus de Chromium, facilitant et améliorant la sécurité des applications hybrides. Qt WebEngine met par ailleurs à disposition une nouvelle API pour les scripts utilisateurs, qui en combinaison avec Qt WebChannel facilite le développement de puissantes applications hybrides.

Qt WebView est maintenant implémentée nativement sous OS X (en plus d'Android et d'iOS). Qt WebView expose maintenant une API concernant les notifications de statuts, le contenu HTML ou bien le JavaScript en cours d'exécution.

Autres nouvelles fonctionnalités


Qt Bluetooth gère totalement le Bluetooth basse consommation, tant sur Android qu'iOS. Par ailleurs, le Bluetooth classique est maintenant supporté sous iOS.
Le module Qt Network n'est pas en reste, avec une nouvelle implémentation de SSL pour iOS et OS X reposant sur le « Secure Transport », les suites d'algorithmes TLS PSK, ainsi que les certificats à courbe elliptique.

Sous Linux, Qt NFC dispose maintenant d'une implémentation reposant sur neard et différentes améliorations ont été apportées à QPA.
Pour plus de détails, vous pouvez consulter la liste des nouvelles fonctionnalités de Qt 5.5.

Configurations compatibles


Afin de mieux supporter Qt WebEngine ainsi que de nouvelles fonctionnalités profitant des nouveaux compilateurs, le système d'intégration continue et de distribution a été mis à jour pour Qt 5.5. Pour ajouter ces nouvelles configurations, d'autres plus anciennes devront être abandonnées, comme Ubuntu 11.10 et 12.04 ; OS X 10.7 ne sera supporté qu'en citoyen de seconde zone. Par contre, Qt 5.5 fonctionnera sur Windows 10 (lorsqu'il sera disponible) ainsi que RedHat Enterprise Linux 6.6.

Vous trouverez plus de détails sur la nouvelle configuration du système d'intégration continue sur le wiki.

Modules dépréciés


Les modules Qt WebKit, Qt Declarative (Qt Quick 1) et Qt Script sont maintenant dépréciés : en effet, Qt WebEngine est le remplaçant direct de Qt WebKit, Qt Quick 2 remplace Qt Quick 1 et les fonctionnalités de Qt QML remplacent celles de Qt Script. Pas de panique, tous ces modules sont toujours inclus dans Qt 5.5, mais seront supprimés dans une version ultérieure de Qt.

Obtenir Qt 5.5 Alpha


Les sources de Qt 5.5 alpha sont disponibles sur la page des téléchargements. Les fichiers binaires seront fournis lors de la sortie de la bêta, mais des instantanés seront quand même disponibles avant.

Aidez à parfaire Qt 5.5. Testez Qt 5.5 Alpha et signalez tout défaut sur l'application de suivi de bogues.

Source : « Qt 5.5 Alpha Available »

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Jiyuu
Rédacteur/Modérateur https://www.developpez.com
Le 21/05/2015 à 6:59


Citation Envoyé par arnolddumas  Voir le message
Qt 3D[/B]
Qt 5.5 Alpha a introduit le module Qt 3D en préversion technologique, afin de corriger les bogues et comportements indésirables avant de l’ouvrir au plus grand nombre. Au vu des améliorations qu'il reste à apporter, ce module devrait être pleinement supporté avec Qt 5.6.

Question bête : préversion technologique ... avant de l'ouvrir au plus grand nombre ça veut dire quoi ???

Il y sera dans la version officielle ou non ?

++

J
0  0 
Avatar de dourouc05
Responsable Qt & Livres https://www.developpez.com
Le 21/05/2015 à 10:33
Citation Envoyé par Jiyuu Voir le message
Question bête : préversion technologique ... avant de l'ouvrir au plus grand nombre ça veut dire quoi ???

Il y sera dans la version officielle ou non ?
Oui, il y sera, mais ne t'attends pas à quelque chose de parfait : ça devrait fonctionner en gros, nettement mieux avec Qt 5.6.
0  0 
Avatar de esired
Membre averti https://www.developpez.com
Le 04/07/2015 à 13:53
Citation Envoyé par arnolddumas

Qt 5.5 introduit un nouveau contrôle, TreeView. Par ailleurs, tous les contrôles précédemment fournis dans la version commerciale (CircularGauge, DelayButton, Dial, Gauge, PieMenu, StatusIndicator, ToggleButton, Tumbler et TumblerColumn) sont maintenant disponibles dans la version libre. Ces anciens contrôles sont maintenant disponibles grâce à l'import QtQuick.Extras.
Ca c'est une super nouvelle Merci à Digia
0  0 
Avatar de TJ1985
Membre confirmé https://www.developpez.com
Le 28/11/2015 à 12:45
Je découvre Qt depuis peu, je suis impressionné par la qualité de cette plateforme. Bravo à ses contributeurs, vous faites vraiment un super-job.
0  0 
Avatar de loupium
Membre habitué https://www.developpez.com
Le 28/11/2015 à 16:28
Bonjour,

Impressionner un pascalien et d'expérience qui plus est, ce n'est pas négligeable.
Sinon, dommage que Delphi n'a pas investi dans son développement. C'était un formidable outil à son époque.
Cela aurait pu être un beau combat avec Qt.
0  0 
Avatar de TJ1985
Membre confirmé https://www.developpez.com
Le 28/11/2015 à 18:48
Citation Envoyé par loupium Voir le message
Impressionner un pascalien et d'expérience qui plus est, ce n'est pas négligeable.
Sinon, dommage que Delphi n'a pas investi dans son développement. C'était un formidable outil à son époque.
Cela aurait pu être un beau combat avec Qt.
Normal, Pascal est un langage relativement rigide et discipliné, ce qui incite à la concision. Je retrouve cet esprit dans Qt, pour le peu que j'ai joué avec. J'apprécie aussi infiniment la qualité de la doc, que je complète par le bouquin Application Development with Qt Creator. L'évolution de cette plateforme va pour moi dans le bon sens, j'y trouve clarté et facilite d'appréhension des concepts. Par ailleurs C++ 11 est un progrès remarquable, et 14 semble poursuivre cette tendance.
A contrario Delphi sombre dans un galimatias informe, mélange de cycles de releases incompréhensibles et de licences incohérentes. Dommage pour lui, c'était génial au début. J'ai méchamment l'impression qu'il est devenu une sorte d'EMS pour quelques créateurs historiques...
0  0 
Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -

Partenaire : Hébergement Web