Librairie C++ Qt5 et QML - Fonctionnalités avancées par M2i
Lieu(x)
En centre (31, 34)
Durée
Total : 21 heures
En centre : 21 heures
Financement
Demandeur d’emploi
Salarié
Éligible CPF
Prix
Nous contacter
Cette formation vous intéresse ?
Description générale
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
QQmlListProperty
Threading
Types non reconnus...
Sujets avancés sur Qt Quick
Création de composants visuels en C++
Avec une base Qt Scene Graph : la solution idéale mais limitée
Avec une base QPainter : la solution de compatibilité
Le composant hybride C++ / QML : une solution largement répandue
Intégrer des images générées ou ne provenant pas d'un fichier local
Les "images provider"
Les composants spécialisés
Texture
Dessin procédural
FBO OpenGL...
Les moyens pour se passer de C++ dans certains cas
SVG généré à la volée
Canvas...
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
La création de composants personnalisés : l'importance du cloisonnement
Empêcher les bugs potentiels par intrusion externe dans le composant
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
QQmlListProperty
Threading
Types non reconnus...
Sujets avancés sur Qt Quick
Création de composants visuels en C++
Avec une base Qt Scene Graph : la solution idéale mais limitée
Avec une base QPainter : la solution de compatibilité
Le composant hybride C++ / QML : une solution largement répandue
Intégrer des images générées ou ne provenant pas d'un fichier local
Les "images provider"
Les composants spécialisés
Texture
Dessin procédural
FBO OpenGL...
Les moyens pour se passer de C++ dans certains cas
SVG généré à la volée
Canvas...
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
La création de composants personnalisés : l'importance du cloisonnement
Empêcher les bugs potentiels par intrusion externe dans le composant
Objectifs
Développer des applications pouvant tourner sur Windows, Mac OS, Linux, Android et les systèmes embarqués / temps réel.
Centre(s)
- Montpellier (34)
- Toulouse (31)
Secteur(s)
Métier(s)
- Analyste cogniticien / cogniticienne informatique
- Analyste concepteur / conceptrice informatique
- Analyste d'application
- Analyste d'étude informatique
- Analyste de gestion informatique
- Analyste décisionnel - Business Intelligence
- Analyste développeur / développeuse
- Analyste en cybersécurité
- Analyste fonctionnel / fonctionnelle informatique
- Analyste organique informatique
- Analyste responsable d'application informatique
- Analyste réseau informatique
- Analyste télématique
- Analyste-programmeur / Analyste-programmeuse d'étude informatique
- Analyste-programmeur / Analyste-programmeuse de micro-informatique
- Analyste-programmeur / Analyste-programmeuse en informatique industrielle
- Analyste-programmeur / Analyste-programmeuse gestion informatique
- Analyste-programmeur / Analyste-programmeuse informatique
- Analyste-programmeur / Analyste-programmeuse scientifique informatique
- Assistant / Assistante chef de projet informatique
- Chef de groupe logicien informaticien
- Chef de projet TMA - Tierce Maintenance Applicative
- Chef de projet maîtrise d'oeuvre informatique
- Chef de projet étude et développement informatique
- Concepteur / Conceptrice d'application informatique
- Concepteur / Conceptrice informatique
- Concepteur / Conceptrice logiciel informatique
- Didacticien / Didacticienne informatique
- Développeur / Développeuse Big Data
- Développeur / Développeuse back-end
- Développeur / Développeuse d'application
- Développeur / Développeuse de logiciel de simulation optique et réalité virtuelle
- Développeur / Développeuse de sécurité des systèmes d'information
- Développeur / Développeuse décisionnel - Business Intelligence
- Développeur / Développeuse front-end
- Développeur / Développeuse full-stack
- Développeur / Développeuse informatique
- Développeur / Développeuse jeux vidéo
- Développeur / Développeuse logiciel de réalité augmentée
- Développeur / Développeuse multimédia
- Développeur / Développeuse web
- Développeur / Développeuse web mobile
- Homologateur / Homologatrice logiciel
- Informaticien / Informaticienne analyste
- Informaticien / Informaticienne d'application
- Informaticien / Informaticienne de développement
- Informaticien chargé / Informaticienne chargée d'étude
- Ingénieur / Ingénieure analyste en système d'information
- Ingénieur / Ingénieure analyste informatique
- Ingénieur / Ingénieure d'analyse et de programmation en informatique de gestion
- Ingénieur / Ingénieure d'application informatique
- Ingénieur / Ingénieure d'intégration applicative
- Ingénieur / Ingénieure d'étude en applications scientifiques informatiques
- Ingénieur / Ingénieure d'étude en informatique de gestion
- Ingénieur / Ingénieure d'étude et développement informatique
- Ingénieur / Ingénieure d'étude informatique
- Ingénieur / Ingénieure d'étude logiciel informatique
- Ingénieur / Ingénieure de conception informatique
- Ingénieur / Ingénieure de développement informatique
- Ingénieur / Ingénieure de réalisation informatique
- Ingénieur / Ingénieure développement logiciel informatique
- Ingénieur / Ingénieure en développement d'applications
- Ingénieur / Ingénieure informatique développement en temps réel
- Ingénieur / Ingénieure logiciel informatique
- Ingénieur / Ingénieure programme informatique
- Ingénieur analyste-programmeur / Ingénieure analyste-programmeuse
- Ingénieur concepteur / Ingénieure conceptrice informatique
- Ingénieur informaticien / Ingénieure informaticienne
- Intégrateur / Intégratrice d'application informatique
- Lead programmeur / programmeuse - jeux vidéo
- Paramétreur / Paramétreuse logiciel ERP
- Programmeur / Programmeuse d'applications
- Programmeur / Programmeuse d'études
- Programmeur / Programmeuse de maintenance informatique
- Programmeur / Programmeuse informatique
- Programmeur / Programmeuse jeux vidéo
- Programmeur / Programmeuse logiciel de base informatique
- Programmeur industriel / Programmeuse industrielle
- Responsable d'application informatique
- Responsable d'atelier de génie logiciel
- Responsable d'étude informatique
- Responsable de gestion de configuration
- Responsable de projet informatique
- Responsable des développements informatiques
- Scrum Master
- Technicien / Technicienne programmation
- Testeur / Testeuse informatique
- Webmaster
- Webmaster développeur / développeuse
Compétence(s)
- Algorithmique
- Animation d'instances agiles (mêlée, démonstration, rétrospective, …)
- Architecture d'applications
- Architecture des systèmes d'information
- Architecture propriétaire
- Architecture web
- Business Intelligence (BI) / Informatique décisionnelle
- Comptabilité générale
- Finance
- Formalisation de processus de gestion
- Gestion commerciale, relation clients
- Gestion de configuration
- Gestion de production
- Gestion de projet
- Gestion des Ressources Humaines
- Informatique de gestion
- Informatique industrielle
- Informatique scientifique et technique
- Langage informatique ASP.NET
- Langage informatique Ada
- Langage informatique Apache
- Langage informatique AutoItScript
- Langage informatique Basic
- Langage informatique C#
- Langage informatique C/C++
- Langage informatique CSS
- Langage informatique Cobol
- Langage informatique Delphi
- Langage informatique Fortran
- Langage informatique HTML
- Langage informatique J2EE
- Langage informatique J2ME
- Langage informatique Java
- Langage informatique Lisp
- Langage informatique PHP
- Langage informatique Pascal
- Langage informatique Perl
- Langage informatique Prolog
- Langage informatique Python
- Langage informatique Ruby
- Langage informatique SQL
- Langage informatique Script Shell
- Langage informatique VB.NET
- Langage informatique Visual Basic
- Langage informatique WLangage
- Langage informatique XML
- Langages de programmation informatique
- Marketing / Mercatique
- Matériel de contrôle embarqué
- Modélisation informatique
- Méthode AGILE
- Méthodologie SAFe
- Méthodologie Scrum
- Principes d'intégration de matériels et de logiciels
- Process et procédures d'achats
- Procédures d'appels d'offres
- Produits multimédia
- Progiciels de Gestion Intégrée (PGI) / Enterprise Resource Planning (ERP)
- Programmation informatique
- Programmation logicielle
- Protocoles et normes télécoms
- Publication Assistée par Ordinateur (PAO)
- Règles de sécurité Informatique et Télécoms
- Réseaux informatiques et télécoms
- Système KANBAN
- Système LEAN
- Système embarqué
- Systèmes d'exploitation informatique
- Technologies de l'accessibilité numérique
Formation proposée par : M2i
À découvrir