Aller au contenu principal

Mini-Projet 1

Au préalable
  1. Se créer un dossier Terminale NSI sur votre ordinateur ou clé USB
  2. Dans ce dossier, créer un dossier Mini_Projet

Sur EduPython ou autre instance python, faire :

  1. Créer un nouveau fichier en cliquant sur l'icône 📄, ou en appuyant sur CTRL+N
  2. Enregistrer le fichier sous le nom Mini_Projet_1 en cliquant sur l'icône 💾, ou en appuyant sur CTRL+S
Mini-Projet

Chaque fonction doit être documentée.
Le mini-projet se fait par 2.

Ce premier mini-projet a pour but de consolider les connaissances autour de la programmation objet. Il consiste à modéliser plusieurs classes qui vont être liées entre-elles : une classe élève, une classe classe, et une classe enseignant.

Réflexion

Dans un premier temps, réfléchir, pour chacune des classes énoncées, aux attributs caractérisant ces objets.
On en prendra maximum 3 pour chacun. Un élève aura en plus comme attribut une liste de notes (flottant).

Chaque classe doit avoir également quelques méthodes permettant d'interagir avec les instances (par exemple : ajouter des notes à un élève, faire la moyenne d'un élève, changer un élève de classe, modifier la liste des élèves d'une classe, changer la matière d'un enseignant etc...).

UML

Dessiner un diagramme UML visualisant les attributs, méthodes de chaque classe, ainsi que les associations entre les différentes classes.

Important !

Ce travail important permet d'avoir une image visuelle des interactions des classes entre elles, et permet, s'il est bien fait, de minimiser les erreurs d'utilisation de classes entre elles.

Répartition des tâches

Les classes ne sont pas conséquentes, répartissez-vous les. Le regroupement pourra se faire lorsque les classes sont finies et testées.

Tests

Testez au fur et à mesure vos classes et méthodes.
Faites le constructeur et la méthode d'affichage, puis tester. Quand vous ajoutez une nouvelle méthode, testez là d'emblée pour vérifier son fonctionnement.

Exemple Élève

Un élève peut être défini par l'ensemble des informations ci-dessous :

  • Un attribut nom (string);
  • Un attribut prenom (string);
  • Un attribut notes (liste de nombres, initialisée vide);
  • Une méthode ajouterNote(self, x) qui ajoute une note à la liste des notes de l'élève;
  • Une méthode moyenne(self) renvoyant la moyenne de l'élève à partir de ses notes;
  • Une méthode noteLaPlusBasse(self) renvoyant la note la plus basse de l'élève;
  • Une méthode noteLaPlusHaute(self) renvoyant la note la plus haute de l'élève;
  • une méthode affichage(self) affichant le nom et prénom de l'élève ainsi que sa moyenne.
Définissez, documentez et testez les classes.