A l’issue de la formation le participant sera capable de :
Exposer des types C++ à QML
Savoir gérer les connexions et les événements Qt.
Utiliser les concepts avancés de QML
Optimiser les performances de votre application
- Nos sessions garanties
- Développement
Formation QML niveau Avancé
Objectifs
Prérequis
Disposer d’ne expérience significative sur QT et QML.
Un entretien en amont avec notre expert permet de prendre en compte le profil de chaque participant (niveau, objectifs et résultats attendus, contexte professionnel, enjeux…) et d’adapter le contenu de la formation si besoin.
Un entretien en amont avec notre expert permet de prendre en compte le profil de chaque participant (niveau, objectifs et résultats attendus, contexte professionnel, enjeux…) et d’adapter le contenu de la formation si besoin.
Public
Développeurs
Formation(s) associée(s)
Dernière mise à jour
Programme mis à jour le 04 décembre 2024
Bon à savoir
Evaluez votre niveau
Pour vous aider à bien choisir votre formation, nous vous proposons soit un entretien avec le formateur soit un test d’évaluation. Cela vous assurera que vous disposez des connaissances nécessaires pour suivre la formation dans des conditions optimales.
Formations modulables
Toutes nos formations sont disponibles en présentiel comme en distanciel, en mode coaching individuel ou en groupe de 3 à 6 participants maximum.
Travaux pratiques
Nos formations comprennent de nombreux travaux pratiques pour un meilleur apprentissage (60 % de pratique). Nous proposons également de travailler sur vos données pour une meilleure expérience.
Les Modules
de formation
Module1
Interactions C++/QML
● Exposer des types C++ à QML
● Rappels sur le système de meta types
● Propriétés
● Conversions de type
● Méthodes
● Gestion de la mémoire
● Comportement par défaut
● Comportement personnalisé
● Données en liste
● Liste de type primitif : QList<QString>
● Liste de type QObject : QQmlListProperty<MyType>
● Liste de variants : QVariantList
● Modèle en liste : QAbstractListModel
● Cas particulier du ListModel QML
● Créer et gérer des signaux en QML
● Déclarer un signal en QML
● Les différentes manières de traiter un signal
● Accéder à l’arborescence QML depuis le C++
● Cas simple : trouver un élément par objectName ou par type
● Cas avancé : trouver un élément selon ses propriétés
● Headers privés des composants QML
Module2
Fonctionnement des connexions et des évènements Qt
● Évènements Qt
● Création et envoi
● Propagation
● Déboguer les connexions
● Lister les connexions (API publique)
● Lister les connexions (API privée)
● Pour les tests unitaires : QSignalSpy
● Exemple – les KeyEvents en QML
Utilisation avancée des modèles
● Rappels
● TP – Historique d’appels groupé
● Cas simple : groupage en QML
● Cas avancé : modèle proxy C++
Module3
Multithreading haut niveau (Qt Concurrent)
● Exécuter des tâches en parallèle
● Contrôler le nombre de threads parallèles
Module4
Optimisation des performances
● Profilage C++ : comment utiliser l’outil callgrind de la suite valgrind
● Profilage QML : se connecter à un programme distant, interpréter les résultats
● Charger les composants complexes à la demande (lazy-loading)
● Éviter des redessiner sur tout l’écran (over-drawing)
● Éviter les bindings complexes et le positionnement manuel
● Limiter les conversions de type
● Réutiliser ses composants au maximum
● Éviter d’écrire une propriété dans une boucle
● Compromis RAM / CPU : créer une réserve d’items à l’avance (pooling)
Les prochaines
sessions de formation
Sur demande
Vous souhaitez organiser cette formation à une date spécifique ?Contactez-nous en remplissant le formulaire ci-dessous
02 décembre 2024
13 janvier 2025
27 janvier 2025
27 janvier 2025