Cours:InfoS3 POO : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
(Séances : C++ sous QT Creator)
(Séances : C++ sous QT Creator)
 
(9 révisions intermédiaires par 2 utilisateurs non affichées)
Ligne 9 : Ligne 9 :
  
 
*[[Cours:DevoirPOOcpp2|Évaluation n°1]]
 
*[[Cours:DevoirPOOcpp2|Évaluation n°1]]
 +
*[[Cours:DevoirMaisonPOO1|Devoir maison n°1]]
  
 
<!--*[[Cours:DevoirPOO1|Évaluation n°1]]-->
 
<!--*[[Cours:DevoirPOO1|Évaluation n°1]]-->
 
*[[Cours:DevoirPOO2Ressources|Évaluation n°2 ressources]]
 
*[[Cours:DevoirPOO2Ressources|Évaluation n°2 ressources]]
 
*[[Cours:DevoirPOO2|Évaluation n°2 sujet]]
 
*[[Cours:DevoirPOO2|Évaluation n°2 sujet]]
 
*[[Cours:DevoirMaisonPOO1|Devoir maison n°1]]
 
  
 
= Cours magistral =
 
= Cours magistral =
Ligne 60 : Ligne 59 :
 
*[[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 (3h)  : classe avec slot et émission de signal]]
 
*[[Cours:signalSlotQT|séance 4 (3h)  : classe avec slot et émission de signal]]
* séance 4 : Pointeurs et références
+
*[[Cours:TPheritageIO|séance 5 (3h): on hérite ! (pi4)]]
* séance 5 : Interface graphique
+
*[[Cours:pointeursCpp|séance 6 (1,5h) : manipulation de pointeurs/références]]
* séance 6 : Classe Contrôleur
+
*[[Cours:DiyWidgetQT|séance 7 (3h) : création d'un widget DIY]] (à déplacer pour utilisation dans le DM)
* séance 7 : Filtrage temps réel
+
*[[Cours:TPqtFNS|séance 8 (1,5h) : Machine à état fini]]
* séance 8 : Héritage
+
*[[Cours:pooSignal|séance 9 (0,5h) : Emission de signal]]
* séance 9 : slots et signaux
+
*[[Cours:qtTCP|séance 10 (1,5h) : Révisions ou communication entre 2 cartes par TCP]]
* séance 10 : Machine d'état
+
 
* séance 11 : Évaluation
 
  
 
==Archives==
 
==Archives==
Ligne 79 : Ligne 77 :
 
*[[Cours:TPqtFNS|séance 8 (3h) : Machine à état fini ("pi4") ]]
 
*[[Cours:TPqtFNS|séance 8 (3h) : Machine à état fini ("pi4") ]]
 
*[[Cours:pointeursCpp|séance 9 (1,5h) : manipulation de pointeurs/références]]
 
*[[Cours:pointeursCpp|séance 9 (1,5h) : manipulation de pointeurs/références]]
*[[Cours:qtTCP|séance 10 (1,5h) : Révisions ou communication entre 2 cartes par TCP]]
 
  
  

Version actuelle datée du 2 octobre 2025 à 09:42

Pratique

  • Pour installer QT Creator (ainsi que C++ et Qt) sous de nombreux OS : suivre ce tutoriel
https://guillaumebelz.github.io/qtinstall/

Évaluations

Cours magistral

Diapositives et support de cours

Projets de démonstration de CM

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 :

1. Déclarez les pointeurs

2. Associez les classes et les pointeurs


Séances : C++ sous QT Creator


Archives


  • 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

Idées

  • classe filtrage capteur tor
  • moyenne glissante capteur analogique

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));