Sortie de Qt 5.11 Beta 3
Encore une dizaine de problèmes bloquants avant la version finale

Le , par dourouc05, Responsable Qt
Voici venue la Beta 3. Il reste encore une bonne dizaine de problèmes bloquants avant la mise à disposition de la préversion RC, entre l'étape de compilation des fichiers QML ou encore une zone sensible aux clics (le composant MouseArea) qui reste bloquée dans l'état "clic en cours" pour iOS. Rien ne s'oppose cependant à une version finale de Qt 5.11 fin mai.

Source : [Development] Qt 5.11 Beta3 released.


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


 Poster une réponse

Avatar de koala01 koala01 - Expert éminent sénior https://www.developpez.com
le 12/04/2018 à 17:09
Salut,
Citation Envoyé par SuperAlias Voir le message
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
A vrai dire, l'élément réellement déterminant pour évaluer le temps qu'il te faudra pour faire la migration est: à quel point le framework (quel qu'il soit) impregne-t-il tes données et ta logique métier

Je vais essayer d'exprimer les choses différemment:

Mettons que j'extraie de ton projet de plusieurs millions de lignes, que les fichiers qui définissent tes données métier et la logique qui y est associée, pour les placer dans un tout nouveau projet qui n'utilise pas MFC (du C++ "standard", voire, au pire, du C++/cli), et que j'essaye de compiler ce projet. Combien d'unités de compilation compileront sans problème Pour combien d'unités de compilation dois-je m'attendre à une erreur de compilation suite à l'absence de MFC

Si ton projet a été développé en suivant les "standards de l'époque", sans avoir été refactorisé au fil du temps, j'aurais tendance à penser qu'il n'y a pas une seule unité de compilation qui pourra compiler correctement, et donc que l'imprégnation de MFC est "maximale".

A l'inverse, si ton projet a été refactorisé au fil du temps, pour justement éviter cette imprégnation, il se peut tout à fait que 90 ou 95% (voir plus encore) des unités de compilation compilent correctement.

Dans le premier cas, la migration "d'une traite" de MFC ->Qt (ou vers n'importe quel autre framework, d'ailleurs) sera sans doute particulièrement douloureuse

Une étape intermédiaire qui consisterait à réduire le niveau d'imprégnation des MFC dans les données métiers serait sûrement la bienvenue mais risque de demander à elle seule un effort considérable.

L'alternative étant de décider de partir sur un projet complètement vierge en ne reprenant que l'analyse fonctionnelle... si tant est qu'elle existe bien sur

Dans le second cas, elle sera sans doute beaucoup plus "facile", car il "suffirait" de refaire... la partie Vue et la partie Controler/Delegate de l'application.

Et, bien sur, il y a toutes les possibilités comprises dans l'intervalle
PS: tu remarqueras les guillemets pour cette dernière phrase, car cela peut malgré tout représenter un boulot monstre
Avatar de archqt archqt - Membre habitué https://www.developpez.com
le 13/04/2018 à 15:31
Citation Envoyé par dourouc05 Voir le message
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 .
La LGPL impose simplement que le fournisseur du logiciel offre la possibilité à l'utilisateur de changer de version de Qt. Si vous proposer votre fichier objet une documentation pour expliquer la façon de faire le lien, vous avez le droit de distribuer votre programme.
Bonne fin de journée

Citation Envoyé par koala01 Voir le message
A vrai dire, l'élément réellement déterminant pour évaluer le temps qu'il te faudra pour faire la migration est: à quel point le framework (quel qu'il soit) impregne-t-il tes données et ta logique métier

Je vais essayer d'exprimer les choses différemment:
J'aurais pas dit mieux ;-)

Citation Envoyé par Erakis Voir le message
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.
J'ai utilisé wxWidgets pendant longtemps, et honnêtement cela va quand même plus vite avec Qt. Néanmoins il faudrait voir jusqu'à quel niveau MFC est imbriqué dans le code C++. Et wxWidgets n'est pas compatible MFC il me semble, il reprend un certains nombre d'idées, notamment sur les tables d'événement mais pour le reste je ne suis pas compétent dessus.
Avatar de dourouc05 dourouc05 - Responsable Qt https://www.developpez.com
le 21/05/2018 à 16:11
Mai aura déjà vu deux nouvelles préversions de Qt 5.11 pointer le bout de leur nez : la première RC, comme prévu le 8 mai, puis la deuxième, le 18. Cette dernière ne corrige pas grand-chose, mais des problèmes qui avaient été considérés comme suffisamment gênants pour retarder la sortie de la version finale.

L'objectif est toujours d'avoir la version finale pour le 22 mai.
Avatar de Gojir4 Gojir4 - Membre averti https://www.developpez.com
le 22/05/2018 à 16:16
Citation Envoyé par SuperAlias Voir le message
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
L'API QtWinMigrate, faisant partie de Qt-Solutions, est normalement prévu pour une migration de MFC à Qt. Il permet de mixer des fenêtre MFC avec des widgets. Visiblement (commentaire GitHub) c'est compatible au moins jusqu'à Qt5.8.
Avatar de dourouc05 dourouc05 - Responsable Qt https://www.developpez.com
le 11/06/2018 à 16:45
Sortie de Qt 5.11, avec l'implémentation complète d'Unicode 10,
et un nouveau moteur d'exécution pour Qt Quick, bien plus rapide que le précédent

Qt 5.11 est sorti fin mai, avec une légère avance sur le planning. Cette version s’accompagne d’une série de nouveautés, bien que pas toutes directement visibles. Elle n’aura pas de maintenance à long terme, contrairement à la version d’après, Qt 5.12.
Pour Qt Core, l’accent a été mis sur la compatibilité avec les dernières versions de la bibliothèque standard C++. Quelques fonctionnalités pratiques ont été ajoutées dans l’implémentation du paradigme modèle-vue pour simplifier l’écriture de code. Unicode 10 est complètement géré dans QChar, QString et QTextBoundaryFilter, ainsi que dans la gestion du texte bidirectionnel.
Côté Qt Network, l’extension ALPN de TLS (pour la négociation de protocole au niveau de l’application) et HTTP/2 sont implémentés pour iOS. QNetworkRequest peut directement entamer une connexion HTTP/2 sans passer par une phase de négociation avec HTTP/1.
L’accessibilité pour Windows a été complètement revue, afin d’utiliser l’API UI Automation, ce qui améliore fortement l’expérience des utilisateurs en ayant besoin (sans changement du côté des applications Qt). Les styles d’applications sous Windows ont aussi été revus pour mieux gérer les écran à haute densité de pixel.
L’impression sous Linux revient sur le devant de la scène, avec une fenêtre des paramètres d’impression pour CUPS mise au goût du jour.
Qt QML a été l’objet de gros développements. Le moteur d’exécution derrière Qt Quick a vu son compilateur réécrit de presque zéro pour en améliorer la performance et la maintenabilité à long terme. La nouvelle manière de procéder transforme le code QML et JavaScript en une représentation intermédiaire indépendante de la plateforme (des fichiers QMLC, que qmlcompiler peut aussi générer), laquelle est alors optimisée directement pour la plateforme. Cette nouvelle organisation donne quatre-vingts à nonante pour cent de la performance obtenue avec le JIT de Qt 5.10 — de très beaux gains ! De plus, un nouveau moteur de JIT se focalisant sur les points chauds du code a été ajouté.
Qt Quick peut maintenant charger directement des textures compressées aux formats KTX et PKM, afin de réduire les temps de chargement des applications et la consommation de mémoire pour les images.
Le module Qt Location dispose désormais d’une fonctionnalité de navigation, en indiquant toutes les étapes d’un chemin point par point. Il propose une API encore expérimentale pour créer des objets sur une carte dont les contours ne dépendent pas de QQuickItem. La performance des objets MapPolyline a été fortement améliorée. Les couches peuvent fonctionner en parallèle avec les items à afficher sur les cartes.
QDoc utilise le moteur d’analyse de code de Clang pour analyser les fichiers C++ au lieu d’un analyseur spécifique : la génération de documentation peut maintenant prendre en compte toutes les dernières évolutions de la norme C++.
Qt 5.11 ne gère plus certaines plateformes trop vieilles, comme le compilateur Visual C++ 2013 ou les systèmes d’exploitation QNX 6.6 et macOS 10.10.
Télécharger Qt 5.11.
Source : Qt 5.11 released.
Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -