Qt 6 commence à émerger sur Git
Les règles de branchement sont actuellement discutées pendant la transition vers CMake
Le 2019-01-25 21:35:46, par dourouc05, Responsable Qt & Livres
vraisemblablement pas prévu avant 2020. Il n'empêche que les développeurs commencent à s'activer pour cette version 6, avec des changements prévus qui s'accumulent — mais qui ne peuvent pas être intégrés dans Qt 5, à cause d'un problème de compatibilité binaire ou des sources. Par exemple, certains souhaitent ne plus laisser un accès direct aux données de QLabel par la méthode pixmap() : elle renvoie un pointeur sur les données internes de l'objet QLabel, alors qu'il serait possible de retourner directement les valeurs nécessaires (sans risque que le code extérieur manipule l'état du QLabel).
Les plans au niveau du branchement dans le dépôt Git sont les suivants. Qt 6 disposerait de sa propre branche de développement, en parallèle de celle de Qt 5. Chacune aurait un développement actif et indépendant ; cependant, les changements apportés à Qt 5 seraient régulièrement fusionnés dans la branche Qt 6. Ceci ne serait valable que pour les modules développés dans le dépôt qtbase.git, pour des raisons liées au système d'intégration continue — bien évidemment, le travail continue de ce côté pour éliminer cette restriction.
Pour limiter la casse lors de la mise à jour du code utilisateur vers Qt 6, les fonctions qui seront supprimées dans Qt 6 devront impérativement avoir été marquées comme désapprouvées dans une version de Qt 5. Aucun changement ne sera permis au niveau du système de compilation, sauf en ce qui concerne la migration complète vers CMake. Ce point est d'ailleurs bloquant pour le moment au niveau de l'intégration continue.
Source : Qt 6 To Begin Early Stages Of Development In Git.
Les plans au niveau du branchement dans le dépôt Git sont les suivants. Qt 6 disposerait de sa propre branche de développement, en parallèle de celle de Qt 5. Chacune aurait un développement actif et indépendant ; cependant, les changements apportés à Qt 5 seraient régulièrement fusionnés dans la branche Qt 6. Ceci ne serait valable que pour les modules développés dans le dépôt qtbase.git, pour des raisons liées au système d'intégration continue — bien évidemment, le travail continue de ce côté pour éliminer cette restriction.
Pour limiter la casse lors de la mise à jour du code utilisateur vers Qt 6, les fonctions qui seront supprimées dans Qt 6 devront impérativement avoir été marquées comme désapprouvées dans une version de Qt 5. Aucun changement ne sera permis au niveau du système de compilation, sauf en ce qui concerne la migration complète vers CMake. Ce point est d'ailleurs bloquant pour le moment au niveau de l'intégration continue.
Source : Qt 6 To Begin Early Stages Of Development In Git.
-
dourouc05Responsable Qt & LivresQt vise aussi pas mal de plateformes embarquées, dont les compilateurs ont souvent du mal à suivre l'évolution de la norme C++… Il n'est d'ailleurs pas sûr que les compilateurs implémentent vraiment la norme C++2020 sans trop de défauts d'ici à Qt 6. Je trouve, au contraire, ce choix assez bien réfléchi — en espérant qu'ils se permettront de passer à une version plus récente de C++ dans le cycle de vie de Qt 6.le 29/01/2019 à 17:10
-
Matthieu76Membre éclairéQt 6 ne sera pas basé sur C++ 2020 ? C'est vraiment dommage.le 29/01/2019 à 14:55
-
epsilon68Membre expérimentéje pense qu'ils m'ont perdu quand ils ont joué avec la licence...
d'un autre coté, .net core avance tres vite, bientot MAUI pour de l'UI multiplateforme,
donc je regarde encore Qt mais d'un seul oeil ... on sait jamais, mais plus le temps passe moins je regarde...le 10/12/2020 à 0:22 -
der§enMembre éprouvéMoi, j'ai décroché, quand il fallait mettre du javascript pour faire les UI des programmes en C++.
Apparemment, ils sont en train de revenir au "full C++" et je ne dis pas que je ne vais pas y jeter un oeil...le 10/12/2020 à 17:13 -
defZeroMembre extrêmement actif@epsilon68, +1. En effet le coups sur le changement de licence leurs a quand même fait mauvaise presse, mais à côté de ça, il n'y a pas de véritable alternatives à part peut-être Delphi, donc l'équipe Qt peut bien se le permettre.
@der§en, Oui, enfin faire du Qt et faire du C++ sont 2 choses différentes.
Je rappellerais qu'entre C et C++ il n'y avait qu'un préprocesseur, alors venir qualifié Qt de "full C++", mouuuais c'est limite.
Quand à l'ajout de JS dans QtQuick, c'est quand même relativement plus facile et compréhensible de décrire ses UI avec des langages de plus au niveau, qui plus est sans avoir à gérer soit même les durées de vie de chaque objets, enfin je trouve personnellement mais ce n'est qu'un avis.
Pour ce qui est de Qt6, c'est une bonne chose qu'ils aient inclus des abstractions plus bas niveau et plus optimisé, mais ça a quand même était pas mal facilité par le fait que les API spécifiques aux plateformes ont de plus en plus tendance à converger dans leurs fonctionnement.
Par exemple pour la 3D, si RHI à été rendue possible, c'est bien parce que DX12, Metal et Vulkan ont bien simplifier la tache je pense (donc merci M$, Apple et Khronos). le 10/12/2020 à 19:07 -
epsilon68Membre expérimentében si il y a d'autres options que Qt:
- d'abord la licence est beaucoup trop chere
- sur desktop C# / WPF ou WinUI
- sur mobile React Native (js) ou Xamarin (C#) ou Flutter (dart)
Après, c'est un choix aussi valide de n'implementer une appli que sur 1 seule plateforme, par exemple C++ / objective C / swift sur ios / macos, ou de developper une couche C pour binder sur du C#
des solutions il y en a pleins en fait, et gratuites.
et rares sont les decideurs qui vont choisir C++, trop verbeux, dur et difficile à mettre en oeuvre.le 11/12/2020 à 0:21 -
Jbx 2.0bMembre chevronnéPour ma part j'ai quand même l'impression qu'ils mettent Qt 3D sous le tapis pour promouvoir Qt Quick 3D. En effet la techno Qt 3D n'est plus disponible qu'en librairie additionnelle, pourquoi ? Et bien sur Qt Quick 3D, c'est GPL et commercial, donc ils ont tout intérêt à la mettre en avant.
Par contrer quand on choisit de monter un projet autour de Qt 3D en misant sur le LGPL, on a de quoi flipper...le 11/12/2020 à 9:19 -
archqtMembre émérite- d'abord la licence est beaucoup trop chere- sur desktop C# / WPF ou WinUI- sur mobile React Native (js) ou Xamarin (C#) ou Flutter (dart)des solutions il y en a pleins en fait, et gratuites.
et rares sont les decideurs qui vont choisir C++, trop verbeux, dur et difficile à mettre en oeuvre.
Il n'y a pas, à ma connaissance (à part peut être FireMonkey de C++Builder) d'outils permettant de faire cela. Et bien évidemment les objets QtQuick permettant de faire cela sont sous licence commercial ou GPL.
Sous flutter il y a/avait une application qui permettait directement de faire le code de l'animation.le 13/12/2020 à 14:28 -
epsilon68Membre expérimentéreact native permet de faire ios et android et windows ... microsoft a meme sorti une version pour mac ...
flutter dart c'est pareil, c'est possible de faire une appli desktop (en preversion)
Xamarin MAUI c'est pareil
en fait c'est plutot Qt que je ne trouve pas abouti, ils ne resolvent pas les bugs, et point de vue rapidité, tu crois que QtQuick avec une VM javascript est rapide ?
bref, rien ne pourra justifier un tel prix, alors que des alternatives existent. Je mise beaucoup sur C# MAUIle 13/12/2020 à 16:49 -
archqtMembre émériteOui si on utilise du javascript cela ralenti, par contre le QML est compilé en C++ si l'on veut pour obtenir une pleine vitesse. Et personnellement je mets la logique de l'IHM en C++. Après on est d'accord c'est très très cher.
Les bugs il doit y en avoir comme partout je suppose.
Mais visiblement cela fonctionne dans l'automobile pour l'embarqué sinon ils ne mettraient pas un prix si élevé.
Ce qui est dommage c'est C++ Builder, vu "l'avance" qu'il avait sur les autres IDE dans les années 90 il aurait du être leader.le 13/12/2020 à 18:15