Cours:InfoS3 POO : Différence entre versions
(→séances : C++ sous QT Creator) |
(→Pour aller plus loin) |
||
(12 révisions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 11 : | Ligne 11 : | ||
<!--*[[Cours:DevoirPOO1|Évaluation n°1]]--> | <!--*[[Cours:DevoirPOO1|Évaluation n°1]]--> | ||
− | *[[Cours:DevoirPOO2|Évaluation n°2]] | + | *[[Cours:DevoirPOO2Ressources|Évaluation n°2 ressources]] |
+ | *[[Cours:DevoirPOO2|Évaluation n°2 sujet]] | ||
*[[Cours:DevoirMaisonPOO1|Devoir maison n°1]] | *[[Cours:DevoirMaisonPOO1|Devoir maison n°1]] | ||
− | = Cours magistral= | + | = Cours magistral = |
== Diapositives et support de cours == | == Diapositives et support de cours == | ||
Ligne 52 : | Ligne 53 : | ||
--> | --> | ||
− | = | + | = Séances : C++ sous QT Creator = |
*[[Cours:pooTD1_qtcreator|séance 1 (1,5h) : découverte du C++ et de QT Creator]] | *[[Cours:pooTD1_qtcreator|séance 1 (1,5h) : découverte du C++ et de QT Creator]] | ||
Ligne 59 : | Ligne 60 : | ||
*[[Cours:interfaceQT|séance 3 (1,5h) : 1ère interface graphique]] | *[[Cours:interfaceQT|séance 3 (1,5h) : 1ère interface graphique]] | ||
*[[Cours:signalSlotQT|séance 4 (1,5h) : classe avec slot et émission de signal]] | *[[Cours:signalSlotQT|séance 4 (1,5h) : classe avec slot et émission de signal]] | ||
− | |||
*[[Cours:TPgpioQT|séance 5 (3h) : GPIO (pi4) ]] | *[[Cours:TPgpioQT|séance 5 (3h) : GPIO (pi4) ]] | ||
− | + | *[[Cours:TPheritageIO|séance 6 (4,5h): on hérite ! (pi4)]] | |
− | *[[Cours:TPheritageIO|séance 6 ( | + | *[[Cours:HeritageWidgetQT|séance 7 (1,5h) : spécialisation de Widgets]] |
− | + | *[[Cours:TPqtFNS|séance 8 (3h) : Machine à état fini ("pi4") ]] | |
− | *[[Cours: | + | *[[Cours:pointeursCpp|séance 9 (1,5h) : manipulation de pointeurs/références]] |
− | *[[Cours:TPqtFNS|séance | + | *[[Cours:qtTCP|séance 10 (1,5h) : Révisions ou communication entre 2 cartes par TCP]] |
*{{Rouge|Evaluation (3h) (pi4)}} | *{{Rouge|Evaluation (3h) (pi4)}} | ||
− | |||
− | |||
− | |||
− | |||
=Pour aller plus loin= | =Pour aller plus loin= | ||
− | *[[Cours: | + | *[[Cours:diyWidgetQT|Créer son widget]] |
− | |||
− | |||
*[[Cours:TPgpioControleur|Tp 2 : contrôleur de lampes]] | *[[Cours:TPgpioControleur|Tp 2 : contrôleur de lampes]] | ||
+ | *[[Cours:gitQtCreator|Utilisation de git avec qt creator]] | ||
=Ressources= | =Ressources= |
Version actuelle datée du 13 octobre 2024 à 16:15
Sommaire
Pratique
- Pour installer QT Creator (ainsi que C++ et Qt) sous de nombreux OS : suivre ce tutoriel
https://guillaumebelz.github.io/qtinstall/
- Guide d'installation de Qt par Geoffrey Lecoq (merci à lui) : Fichier:GuideQT Lecoq.pdf
Évaluations
Cours magistral
Diapositives et support de cours
- Diapositives de la partie Introduction : Media:POOintro.pdf
- Diapositives de la partie Notions : Media:POOnotions.pdf
- Diapositives de la partie Approfondissements : Media:POOapprofondissements.pdf
- Support de cours imprimable : Media:POOsupport.pdf
Projets de démonstration de CM
- Projet
minimal
: Media:minimal.zip - Projet
simpleNonOOCar
: Media:simpleNonOOCar.zip - Projet
simpleOOCar
: Media:simpleOOCar.zip - Projet
twoOOCars
: Media:twoOOCars.zip - Projet
formes_start
: Media:formes_start.zip - Projet
formes
: Media:formes.zip - Projet
formes_nonpolymorphes
Media:formes_nonpolymorphes.zip - Projet
formes_polymorphes
Media:formes_polymorphes.zip
Lecture externes potentiellement utiles
Cours de POO d'openclassrooms :
1. Découvrez La notion de programmation orientée objet (POO)
2. Programmez en orienté objet avec C++
Les pointeurs et leur utilisation avec des objets :
2. Associez les classes et les pointeurs
Séances : C++ sous QT Creator
- séance 1 (1,5h) : découverte du C++ et de QT Creator
- séance 2 (3h) : création de classes et manipulation d'objets
- Evaluation (1,5h)
- séance 3 (1,5h) : 1ère interface graphique
- séance 4 (1,5h) : classe avec slot et émission de signal
- séance 5 (3h) : GPIO (pi4)
- séance 6 (4,5h): on hérite ! (pi4)
- séance 7 (1,5h) : spécialisation de Widgets
- séance 8 (3h) : Machine à état fini ("pi4")
- séance 9 (1,5h) : manipulation de pointeurs/références
- séance 10 (1,5h) : Révisions ou communication entre 2 cartes par TCP
- Evaluation (3h) (pi4)
Pour aller plus loin
Ressources
Logiciel
Vm Qt Creator
Vous pouvez utiliser l'image VirtualBox suivante sur laquelle QtCreator est installé
https://drive.google.com/file/d/1BdVNnAtpYM14ztf215gBVx5b2P8iAAix/view?usp=sharing
Le mot de passe est geii
Simulation de gpio
- simulateur leds/bp/interrupteur
- dans la machine virtuelle VirtualBox
- au besoin supprimer le fichier GpioSimulateur.zip dans le répertoire "Téléchargements"
- télécharger Media:GpioSimulateur.zip dans le répertoire "Téléchargements"
- lancer un "émulateur de Terminal", taper les commandes :
cd ~/Téléchargements/
rm gpioSimulateur
unzip GpioSimulateur.zip
chmod +x gpioSimulateur
./gpioSimulateur
Vrac
Nomenclature diagramme objet
Autres pages wiki utiles
Cas particuliers
surcharge et signaux/slots
Il faudra indiquer au compilateur le type des paramètres pour faire le choix du bon signal et/ou slot :
connect(ui->doubleSpinBox,QOverload<double>::of(&QDoubleSpinBox::valueChanged),
this,&MainWindow::afficheDouble);
connect(ui->doubleSpinBox,QOverload<double>::of(&QDoubleSpinBox::valueChanged),
this,QOverload<double>::of(&MainWindow::affiche));
connect(ui->doubleSpinBox,QOverload<const QString &>::of(&QDoubleSpinBox::valueChanged),
this,QOverload<const QString &>::of(&MainWindow::affiche));