Librairie C++ Qt5 et QML - Fonctionnalités avancées



Objectifs, programme, validation de la formation

Objectifs

Développer des applications pouvant tourner sur Windows, Mac OS, Linux, Android et les systèmes embarqués / temps réel.

Description, programmation

Rappels de Qt / QML - L’intégration entre C++ / Qt et QML / JavaScript et ses limites - La boucle d’évènement de Qt et son impact sur Qt Quick - Problèmes fréquemment rencontrés - Sujets avancés sur Qt Quick - Création de composants visuels en C++ - Intégrer des images générées ou ne provenant pas d’un fichier local - Optimisation des performances - Les pratiques permettant d’améliorer naturellement les performances du code - Le "proxying" des bindings pour éviter les goulets d’étranglement - L’utilisation de C++ à la place de JavaScript pour les traitements lourds - La résolution des noms en QML : l’épineux problème du "scoping" - Performances graphiques : éléments à prendre en compte - Les objets graphiques superflus - Les mauvaises utilisations dans les "delegates" d’une vue MVC - Les effets de bords des mauvaises utilisations de composants basiques - Image - Text... - Techniques pour rendre le code plus compréhensible - La programmation orientée flux de données - Différences avec l’orienté objet classique / naïf - Application des principes en QML et C++ - Implications sur l’architecture globale - La séparation C++ / QML - Bien placer la séparation entre les deux langages - Eviter que le code QML soit pollué par de mauvaises utilisations de C++ - Simplifier le code côté C++ pour qu’il ne soit pas un frein à son utilisation - Eviter les erreurs courantes - Rendre le code QML sémantiquement plus clair - Fuir les cas où JavaScript peut produire des erreurs silencieuses - Limiter au maximum la redondance dans le code, notamment entre C++ et QML - La création de composants personnalisés : l’importance du cloisonnement - Empêcher les bugs potentiels par intrusion externe dans le composant - Rendre un composant réellement réutilisable et portable pour un gain de temps - La spécialisation en cascade : un bon moyen de coder proprement et simplement avec QML - Questions restantes : une fois que la technique pure est réglée - Ces problématiques qui apparaissent en fin de projet, lorsque le produit doit être diffusé - La création de "vrais" modules de plug-ins QML - Le déploiement sur les plateformes sans système de package (Windows...) - La dynamique traduction de l’interface (Qt Linguist) - Certification

Validation et sanction

Certification M2i Langages de Programmation

Type de formation

Professionnalisation

Niveau de sortie sans niveau spécifique

Métiers visés

M1805 :


Durée, rythme, financement

Durée 21 heures en centre

Modalités de l'alternance -

Conventionnement Non

Conditions d'accès

Niveau d'entrée sans niveau spécifique

Conditions spécifiques et prérequis Avoir développé en C++. Avoir suivi la formation CPP-QT5IN "Librairie C++ Qt5 et QML - Initiation" ou connaître les bases de Qt Core, QML et Qt Quick.

Éligibilité de cette formation au compte personnel de formation pour les salariés


Code CPF 237067 - Validité du 02/01/2019 au 31/12/2115


Périodes prévisibles de déroulement des sessions

Session débutant le : 01/01/2021

Adresse d'inscription
55 rue EUCLIDE
La Terra Verde 34000 Montpellier

Lieu de formation


Organisme de formation responsable