Sortie de Qt 5.11 Beta 1
Avec une gestion de l'accessibilité au goût du jour pour Windows et une performance du moteur QML améliorée

Le , par dourouc05, Responsable Qt & Livres
Qt 5.10 est sorti il y a peu, voici venu le temps de la prochaine itération, numérotée 5.11. Pour le moment, on ne dispose que de préversions (la première Beta vient de sortir), la finale est prévue fin mai. Les prochaines Beta devraient sortir toutes les une à deux semaines.

Au programme, le compilateur QML a été substantiellement revu et réécrit. Notamment, le code intermédiaire est directement généré après l’analyse des fichiers QML, au lieu d’utiliser plusieurs étapes intercalaires ; ensuite, l’interpréteur de code intermédiaire fonctionne bien plus rapidement, il peut obtenir quatre-vingts à nonante pour cent de la performance du JIT. Les appels de fonction JavaScript ont fait l’objet d’une cure d’amaigrissement, ce qui devrait accélérer fortement les applications où beaucoup de fonctions très petites sont appelées.


Pour Windows, toute l’accessibilité utilise désormais l’API UI Automation, apportée en même temps que WPF. Ce changement n’a aucun impact sur la compatibilité avec les anciennes versions de Windows (UI Automation est même disponible pour Windows XP  !) — l’API précédente, Active Automation, remonte à Windows 98, voire 95… Les avantages pour les personnes utilisant des technologies d’assistance (pour les malvoyants, notamment) sont nombreux, car la nouvelle API permet de décrire de manière plus riche les interfaces modernes.

Au niveau des plateformes, Visual C++ 2013 n’est plus géré ; QNX 6.6 et macOS 10.10 non plus. Le module Qt Remote Objects arrive en TP3 pour le partage de QObject entre processus, tout comme Qt WebGL Streaming en TP2, mais aucun n’est encore prêt pour une finalisation.

Source : New Features in Qt 5.11, Qt 5.11 Beta1 Released.


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse Signaler un problème

Avatar de SuperAlias SuperAlias - Futur Membre du Club https://www.developpez.com
le 12/03/2018 à 12:30
Bonjour. Question pour les experts Qt: Ces outils sont intéressants, et étant développeur exclusivement MFC depuis +20 ans, je serais bien tenté de basculer sous Qt, mais avec mes plannings hors normes, combien de temps pour se former? Et existe t-ils des outils de migration MFC -> Qt, ou faut-il tout réécrire? Merci pour vos réponses
Avatar de Erakis Erakis - Rédacteur https://www.developpez.com
le 12/03/2018 à 14:10
Bonjour SuperAlias,

Je suis moi même un vétéran de Win32 / MFC et ce non pas par choix, mais par nécessité. J'utilise MFC depuis plus d'une bonne dizaine d'année. Quant a QT, je dirais depuis 3 ans.

J'ai travaillé sur un système réalisé avec MFC pour Windows CE et Windows Desktop comportant plus ou moins 200 fenêtres.
J'ai aussi travaillé sur un autre système similaire avec QT (QML), mais avec moins de 30 fenêtres. Pour démarrer sous QT, j'ai lu le livre Créer des applications avec Qt Essentiels. Honnêtement, après 2-3 semaines, j'avais tout en main pour bien démarrer une nouvelle application (QML + QT). Au tout début, j'ai eu de la misère à comprendre le système de slot/signal, mais ça fini par s'éclaircir rapidement.

J'ai bien peur de vous dire qu'entre les 2, les resemblances ne sont pas nombreuse. Vous aurez 2 choix pour bâtir vos UI (Widgets vs Quick UI (qml)). Si vous utilisez que les widgets, la conversion de votre application sera moins complexe, mais beaucoup sera à refaire tout de même. Si vous utilisez le QML, alors vous seriez mieux de la recommencer, parce beaucoup de chose changeront. Et pour les 2 cas, je suis sûr à 99.9% qu'il existe des outils de migrations.

Si cela peut vous aider, voici mon constat

QT
  • + Rare sont les cas où il nous manque quelque chose. Le framework de QT regorge d'éléments
  • + Le fait qu'il soit cross-platform est un énorme avantage
  • + La possibilité de faire des UI en QML est génial, personnellement je trouve qu'un language à la markup est plus intéressant pour concevoir des UI.
  • - Le footprint de QT (toutes les dlls) est assez gros. On peut parler de 30 à 80Mo lorsqu'on déploie notre application. Et si l'on veut bundler tout ça ensemble avec static linking, alors c'est payant.


MFC
  • + Certains ne seront peut-être pas d'accord, mais la rapidité d’exécution côté UI est préférable à celle de QT
  • + Les exécutables sont petits.
  • + Le composants graphique sont dépassé et trop peu nombreux. La plus part du temps, il nous faut ré-écrire nos composants, quant ceux-ci existe déjà dans d'autre framework depuis des années
  • - Lié à Microsoft Windows seulement


Si vous chercher un remplacement à MFC, pourquoi ne pas vous diriger vers wxwidgets ? C'est plus similaire à MFC (c'est le but) et des outils de migration existe. Vos applications pourraient devenir cross-platform, wxwidgets a un API très étendu.
Avatar de dourouc05 dourouc05 - Responsable Qt & Livres https://www.developpez.com
le 12/03/2018 à 14:49
Citation Envoyé par Erakis Voir le message
- Le footprint de QT (toutes les dlls) est assez gros. On peut parler de 30 à 80Mo lorsqu'on déploie notre application. Et si l'on veut bundler tout ça ensemble avec static linking, alors c'est payant.
Rien ne t'interdit d'utiliser Qt sous LGPL et de livrer tes propres DLL, allégées de ce dont tu n'as pas besoin. L'inconvénient est qu'il faut recompiler Qt, ce qui prend… un certain temps .
Avatar de SuperAlias SuperAlias - Futur Membre du Club https://www.developpez.com
le 12/03/2018 à 16:48
Merci Erakis pour ce retour d'expérience.
Hélas, ce n'est pas pour faire de nouveaux projets, mais bien pour migrer mes applications et certaines dépassent largement le million de lignes de code MFC...
MFC était une contrainte et maintenant c'est en + un boulet.
Je vais me pencher sur wxwidgets pour voir (si je trouve le temps...)

Merci encore
Avatar de LittleWhite LittleWhite - Responsable 2D/3D/Jeux https://www.developpez.com
le 12/03/2018 à 18:43
Les développeurs de Dolphin (émulateur GameCube/Wii) sont passé récemment de wxwidget (qui commence à souffrir de lacunes et qui n'est pas un projet si actif que ça) vers Qt. Du coup, j'oserai dire que ce n'est peut être pas une bonne idée de songer à wxwidget.
Avatar de Erakis Erakis - Rédacteur https://www.developpez.com
le 12/03/2018 à 18:46
Citation Envoyé par LittleWhite Voir le message
Les développeurs de Dolphin (émulateur GameCube/Wii) sont passé récemment de wxwidget (qui commence à souffrir de lacunes et qui n'est pas un projet si actif que ça) vers Qt. Du coup, j'oserai dire que ce n'est peut être pas une bonne idée de songer à wxwidget.
Je suis d'accord avec vous, je crois que QT à plus d'avenir, mais SuperAlias mentionne qu'il doit migrer de MFC vers une autre solution et qu'il recherche le point le plus court ou compatible. Donc, ici wxwidget est vainqueur.
Avatar de Matthieu76 Matthieu76 - Membre confirmé https://www.developpez.com
le 14/03/2018 à 11:16
Bonjour à tous,

Petit question :
Avec quel IDE codez-vous vos application Qt ?

Actuellement je suis sous Qt Creator mais je songe fortement à passer sous Visual Studio pour pourvoir utiliser ReSharper. Sous Qt Creator il n'y a pas d'outil d'analyse de code en temps réel et c'est vraiment dommage. De plus les test unitaire ont l'air plus simple et mieux géré sous Visual Studio.
Avatar de Erakis Erakis - Rédacteur https://www.developpez.com
le 14/03/2018 à 16:05
Citation Envoyé par Matthieu76 Voir le message
Petit question :
Avec quel IDE codez-vous vos application Qt ?
J'utilise principalement Qt Creator. Certes on est très loin de Visual Studio sur tous les domaines (le debugger QML et C++ est juste horrible et trop lent), mais pour faire du QML je trouve QT Creator plus conviviale. De plus, les fichier projet de QT (*.pro sont plus portable (Linux/Windows) que Visual Studio et leur (vcproj/sln). Enfin, si je ne faisait pas de multiplatfom et de QML, j'opterais assurément pour Visual Studio et le plugin de QT.
Avatar de Matthieu76 Matthieu76 - Membre confirmé https://www.developpez.com
le 15/03/2018 à 10:15
Je pense que je vais essayer de bosser avec Qt Creator et Visual Studio en parallèle, comme ça je garde Qt pour ma partie GUI qui ne demande pas trop de debug "normalement" et pour le reste je bosserais avec Visual Studio. Je pourrais peut-être même faire une partie sans GUI pour windows et avec GUI pour Qt Creator, en plus ça renforcera ma séparation entre ma Vue et mon Model-Controller.
Avatar de dourouc05 dourouc05 - Responsable Qt & Livres https://www.developpez.com
le 17/03/2018 à 19:41
La préversion Beta 2 est maintenant disponible. Elle corrige une série de défauts depuis la précédente. Dix-sept problèmes majeurs doivent encore être corrigés avant la version finale. A priori, rien ne s'oppose à une publication fin mai !

Source : [Development] Qt 5.11 beta2 released.
Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -