Accueil    Formations    Informatique    Langages et développement    Langage C++    Librairie C++ Qt5 - Initiation

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Vidéo de présentation

Cette formation peut être financée grâce au CPF (Compte Personnel de Formation). Le Compte Personnel de Formation permet d'acquérir des droits à la formation professionnelle, comptabilisés en euros, que chacun peut utiliser avec ou sans l'accord de son employeur tout au long de sa vie active (y compris en période de chômage) pour suivre une formation qualifiante ou certifiante. 

Consultez le montant de vos droits CPF Consultez la charte de déontologie

Objectifs pédagogiques / Compétences visées

  • Développer une application en C++ via la librairie Qt5
  • Identifier les différents types définis par Qt5
  • Utiliser Qt Creator.

Niveau requis

Savoir développer en C++.

Public concerné

Développeurs informatiques en C++ / Qt.

Programme

Présentation

Histoire de Qt

  • L'histoire de Qt
  • Qt de sociétés en sociétés
  • Par le passé : une jungle de produits
  • Aujourd'hui : un seul environnement

Rappels sur C++

  • Définition de classe
  • CPP associé
  • Parfois les deux en un
  • Encapsulation
  • Initialisation de variables

Qt Creator

Prise en main

  • Ouverture de projets / modèles
  • Projets Quick et autres modèles
  • Le mode console (Linux)
  • Barre des tâches

L'aide

  • Qt assistant intégré
  • L'onglet d'aide
  • Aide autre
  • Quelques conseils pour lire une page d'aide

Aide Freenode

  • L'aide sur IRC / Freenode
  • L'aide par IRC
  • Logiciels IRC
  • Exemple de canal / liste des canaux
  • IRC : Présentation du réseau Freenode

Usages

  • Freenode : NickServ
  • Quelques règles de bon sens
  • Pastebin / Imagebin
  • Les canaux Freenode spécialisés C++ / Qt

Utilisation

Edition de texte

  • Caractéristiques de l'éditeur
  • Quelques raccourcis clavier

Les fichiers en présence

  • Les différents fichiers d'un projet
  • Fichiers mainwindow.h / mainwindow.cpp / mainwindow.ui / moc_mainwindow.cpp / Makefile

Fichiers .pro

  • Détails de qmake
  • Gestion de la compilation

Objets Qt

Classes de base

  • Les principales classes
  • QCoreApplication / QApplication

Classes présentes dans Designer

  • Présentation de la partie Designer
  • QMainWindow / Qmenu
  • Les objets d'une interface

QLineEdit

  • Barre de sélection de mode et layout
  • Mode Buddy
  • Layout et les spacers
  • Splitter
  • QtDesigner (pour aller plus loin)

Slots et signaux

  • En pratique
  • Raccourcis Designer
  • Signaux avec arguments
  • Cas de disconnect
  • Déclaration de signaux / émission d'un signal
  • Nouvelles notations du connect en Qt5

Classes Qt

Les types de base

  • Les chaînes QString
  • Méthodes principales de QString
  • QDebug / QList / QStringList / QVariant

Classes QMap, QDialog, QMessageBox, QWidget, QFileDialog

  • QMap et QHash
  • QFile QDir QFileInfo
  • QDialog
  • Importance du "this"
  • QMessageBox / QFileDialog

Classes QRessources, QSettings

  • QResources
  • Utilisation d'une ressource
  • QFont / QSettings

QRegExp

  • Présentation
  • Caractères
  • Exemples
  • Ensembles
  • Captures
  • QRegExp : expressions régulières

Classes évoluées

Bases de données

  • Bases de données compatibles Qt
  • Intérêt
  • Notions de langage SQL
  • QSqlDatabase / SqlQuery
  • Facilités QSqlQuery

MVC (Modèle Vue Contrôleur)

  • Modèle MVC QSqlModel
  • Récupération des informations du modèle
  • Les vues
  • QSortFilterProxyModel
  • Les éléments équivalents

Plus loin avec les MVC

  • Quelques points à savoir sur le MVC
  • Construire son propre modèle
  • Le paramètre "role"
  • Les delegates

QNetWork

  • QNetWorkAccessManager
  • Exemple de traitement d'un fichier reçu
  • Suivre les liens
  • QTcpServer

Debug

Présentation

  • Débugage (méthodes et pas à pas)
  • Poser un point d'arrêt
  • Inspecter le programme

Point d'arrêt

  • Aller plus loin sur le Point d'arrêt
  • GDB : point d'arrêt
  • "Break" avec liste de commandes
  • Autres points d'arrêts

Debuguer via un core dump

  • Debug après plantage : core dump
  • Tuning de génération du core
  • Debug Core Qt

Debuguer à distance

  • Debug croisé
  • Installation sur l'équipement distant
  • Mise en route sur l'équipement host
  • Débug croisé à partir de Qt Creator

Images

Exemple avec l'éditeur de texte

  • Exemple de dérivation de classe
  • Mise en oeuvre
  • Evènements
  • Définitions
  • QPaintEvent
  • Evènements souris / clavier

QPainter

  • Présentation de QPainter
  • Les directives graphiques de QPainter
  • Crayon (QPen)
  • Pinceau (QBrush)
  • Police (QFont) et coordonnées
  • Opération de transformation

Les images

  • Généralité
  • Les classes d'images
  • Conversions d'un type à l'autre
  • Lectures / écritures aux formats d'images
  • Exemple de création de fichiers Images

QGraphicsScene

  • Présentation
  • QGraphicsProxyWidget
  • Utilisation à partir d'un QGraphicsView
  • Coordonnées sur une scène

Divers

Classes et casts

  • Extension un mode full screen
  • Les casts en C++ / en Qt
  • Les pointeurs intelligents en Qt

Feuille de style, animation et timer

  • Feuille de style et exemples
  • QAbstractAnimation
  • Animation d'un objet
  • Groupement d'animation
  • QTimer

Processus et Thread

  • QProcess
  • QThread
  • Mécanisme QThread
  • Méthode QObjet relatives aux "threads"

QObject

  • La classe QMetaMethod
  • La classe metaObject
  • Les "properties"
  • La classe QObject
  • QObject et signal
  • Méthode QObjet relatives aux "threads"

Certification (en option)

  • Prévoir l'achat de la certification en supplément
  • L'examen (en français) sera passé le dernier jour, à l'issue de la formation et s'effectuera en ligne
  • Il s'agit d'un QCM dont la durée moyenne est d'1h30 et dont le score obtenu attestera d'un niveau de compétence
  • NB : Certification M2i "Langages de Programmation" valide jusqu'au 31/12/2021. N'hésitez pas à contacter votre Conseiller Formation pour toute information complémentaire

Modalités d’évaluation des acquis

  • En cours de formation, par des études de cas ou des travaux pratiques
  • Et, en fin de formation, par un questionnaire d'auto-évaluation ou une certification (M2i ou éditeur)

Compétences attestées par la certification

  • Développer des applications ou logiciels conformément au cahier des charges
  • Intégrer un produit ou un programme à partir des outils, méthodes ou langages
  • Etre autonome dans l'exécution des tâches
  • Préparer les plans de tests d'une application
  • Conduire les tests unitaires
  • Optimiser les tests de performance d'une application
  • Assurer la veille technique et concurrentielle.

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Vous souhaitez suivre cette formation ?

Cette formation est disponible en présentiel ou en classe à distance, avec un programme et une qualité pédagogique identiques.

Choisissez la modalité souhaitée pour vous inscrire :

Votre société a besoin d'une offre personnalisée ? Contactez-nous

Testez vos connaissances

Nos quizz vous guident dans le choix de formation.
Évaluez votre niveau de pré-requis pour découvrir la formation faite pour vous.

Accédez au test de connaissance

Faites évoluer vos compétences

Faites-nous part de votre projet de formation, nous sommes là pour vous guider.

Contactez-nous