Fiche de cours

Programmer une classe

Lycée   >   Terminale   >   NSI   >   Programmer une classe

  • Fiche de cours
  • Quiz et exercices
  • Vidéos et podcasts
Objectifs
  • Utiliser le vocabulaire de la programmation orientée objet.
  • Programmer une classe en Python.
  • Accéder aux attributs et méthodes d'une classe en Python.
Points clés
  • La programmation orientée objet consiste à créer et/ou à utiliser des objets.
  • Un objet est un exemplaire particulier d’une classe, il possède des méthodes et un ensemble de propriétés appelées attributs. Un objet est aussi appelé une instance.
  • Pour construire une classe, il faut utiliser ce qu’on appelle un constructeur.

Une autre manière de programmer consiste à créer ses propres objets qui auront leurs propres méthodes : cela facilitera l’implémentation des données et la lisibilité du programme. On appelle cela la programmation orientée objet (POO).

1. Le vocabulaire de la programmation orientée objet
La Programmation Orientée Objet (POO) se base sur la création et/ou l’utilisation d’objets qui possèdent des méthodes et des propriétés spécifiques.
a. Objet et classe

En informatique, un objet est une modélisation du monde réel.

Chaque objet appartient à au moins une classe. Une classe est en fait une famille d’objets semblables qui représentent un type de données.
Exemple
En Python, str est la classe des chaines de caractères.
Un objet est aussi appelé une instance. C’est un exemplaire particulier d’une classe.
b. Attribut et méthode

Les instances (ou objets) peuvent posséder des attributs et des méthodes.

Attribut
Les attributs sont des variables associées aux instances d’une classe.

Il y en a de deux types.

  • Attribut de classe : il est identique pour chaque instance et ne change pas.
  • Attribut d'instance : il s’agit d’une variable associée et spécifique à une instance.
Méthode

Les méthodes sont des fonctions associées aux instances (objets) et qui agissent ou utilisent ces derniers.

Une instance = une capsule
On peut se représenter chaque instance comme une capsule qui regroupe des attributs et des méthodes.

instance = attributs + méthodes

On parle alors d’encapsulation des données et des méthodes dans les instances.

c. Exemple de construction d’une classe

On veut manipuler des instances qui contiennent dans une variable eleve les noms, les prénoms, les notes (en maths, NSI et EPS) et la méthode qui permet de calculer la moyenne de chaque élève.

On va pour cela créer la classe Eleve.

  • Attributs de classe : il s’agit du nom des matières, donc Maths, NSI et EPS.
  • Attributs d’instance : nom, prénom, note en Maths, note en NSI, note en EPS.
  • Méthode : calcul de la moyenne (note en Maths, note en NSI, note en EPS) = somme des notes divisée par 3.

On vient de créer la classe Eleve, qui va contenir les informations des différents élèves (chaque variable eleve est une instance de cette classe).

2. Programmer une classe en Python
a. Créer une classe
Pour créer une classe, on utilise le mot-clé class suivi du nom de celle-ci et suivi de :.
Attention
Le nom d’une classe commence par une majuscule et ne contient que des caractères alphanumériques.
Pour indiquer qu’une classe ne fait rien, on utilisera le mot-clé pass.
Exemple
Le code suivant permet de créer une classe Eleve qui ne fait rien.
b. Déclarer une instance

Pour déclarer une instance (objet), on utilise une méthode appelée le constructeur. S'il est défini, il est implicitement exécuté lors de la création de chaque instance.

Le constructeur a un format de nom imposé : __init__ (deux underscores de chaque côté).

Cette méthode prend toujours comme premier paramètre self.

Attention, le constructeur ne doit pas retourner de résultat.

Exemple
Le code suivant permet de déclarer les attributs d’instances nom, prenom, note_matiere1, note_matiere2 et note_matiere3, puis d’attribuer une valeur à chacun de ces attributs.
Voici l’explication ligne à ligne de ce code.
Python Explication
class Eleve On crée la classe qui se nomme Eleve.
  matiere1=”Maths” On crée l’attribut de classe matière1.
  matiere2=”NSI” On crée l’attribut de classe matière2.
  matiere3=”EPS” On crée l’attribut de classe matière3.
  def _init_(self, Nom,
  Prenom, Note1, Note2,
  Note3):

On crée le constructeur qui permet de créer les attributs d’instances de la classe Eleve.

Les attributs d’instances sont nom, prenom, note_matiere1, note_matiere2 et note_matiere3.

Les valeurs prises par ces attributs d’instances sont Nom, Prenom, Note1, Note2 et Note3

    self.nom=Nom Le mot self représente l’instance de la classe Eleve, donc l’attribut nom de l’instance prend la valeur Nom.
    self.prenom=Prenom L’attribut prenom de l’instance prend la valeur Prenom.
    self.note_matiere1=Note1 L’attribut note_matiere1 prend la valeur Note1.
    self.note_matiere2=Note2 L’attribut note_matiere1 prend la valeur Note1.
    self.note_matiere3=Note3 L’attribut note_matiere3 prend la valeur Note3.
3. Accéder aux attributs et méthodes d'une classe en Python

Voici ci-dessous différentes méthodes en Python qui permettent d’accéder aux attributs et aux méthodes d’une classe.

a. Créer une instance
Pour créer une instance d’une classe, on utilise la commande :

instance=classe(attribut1, attribut2, etc.)

Remarque
Il faut bien mettre des guillemets autour des chaines de caractères, et séparer les différents attributs par des virgules.
Exemple – Création d’une instance Noa
On a créé dans la partie précédente la classe Eleve.
Noa=Eleve("Turing","Alan",19,20,17) permet de créer une instance Noa de la classe Eleve, dont les valeurs d’attributs sont "Turing","Alan",19,20,17.
b. Accéder à la valeur d'un attribut d'une instance
Pour accéder à la valeur d’un attribut d’une instance, on utilise la commande :

instance.attribut

Remarque
Cette notation se nomme la notation pointée.
Exemple
On a créé dans la partie précédente la classe Eleve.
On étudie l’instance Noa=Eleve("Turing","Alan",19,20,17).
Noa.matiere1 retournera "Maths" et Noa.note_matiere3 retournera 17.
c. Créer et utiliser une méthode
Créer une méthode

Pour créer une méthode, il faut écrire une fonction qui prend au minimum pour paramètre l’instance représentée par self.

Exemple – Création de la méthode moyenne d’une classe
La méthode moyenne doit calculer la moyenne d’une instance.

La variable self représente la référence à l’instance étudiée dans la méthode, dont on ne connait encore rien puisqu’elle n’a pas encore été créée.

D’où l’écriture complète de la classe Eleve.

Utiliser une méthode
Pour utiliser une méthode d’une classe, on utilise la commande :

instance.methode()

Exemple
On étudie l’instance Noa=Eleve("Turing","Alan",19,20,17).
Pour utiliser la méthode moyenne de la classe Eleve sur l’instance Noa, on tape Noa.moyenne().

Évalue ce cours !

 

Des quiz et exercices pour mieux assimiler sa leçon

La plateforme de soutien scolaire en ligne myMaxicours propose des quiz et exercices en accompagnement de chaque fiche de cours. Les exercices permettent de vérifier si la leçon est bien comprise ou s’il reste encore des notions à revoir.

S’abonner

 

Des exercices variés pour ne pas s’ennuyer

Les exercices se déclinent sous toutes leurs formes sur myMaxicours ! Selon la matière et la classe étudiées, retrouvez des dictées, des mots à relier ou encore des phrases à compléter, mais aussi des textes à trous et bien d’autres formats !

Dans les classes de primaire, l’accent est mis sur des exercices illustrés très ludiques pour motiver les plus jeunes.

S’abonner

 

Des quiz pour une évaluation en direct

Les quiz et exercices permettent d’avoir un retour immédiat sur la bonne compréhension du cours. Une fois toutes les réponses communiquées, le résultat s’affiche à l’écran et permet à l’élève de se situer immédiatement.

myMaxicours offre des solutions efficaces de révision grâce aux fiches de cours et aux exercices associés. L’élève se rassure pour le prochain examen en testant ses connaissances au préalable.

S’abonner

Des vidéos et des podcasts pour apprendre différemment

Certains élèves ont une mémoire visuelle quand d’autres ont plutôt une mémoire auditive. myMaxicours s’adapte à tous les enfants et adolescents pour leur proposer un apprentissage serein et efficace.

Découvrez de nombreuses vidéos et podcasts en complément des fiches de cours et des exercices pour une année scolaire au top !

S’abonner

 

Des podcasts pour les révisions

La plateforme de soutien scolaire en ligne myMaxicours propose des podcasts de révision pour toutes les classes à examen : troisième, première et terminale.

Les ados peuvent écouter les différents cours afin de mieux les mémoriser en préparation de leurs examens. Des fiches de cours de différentes matières sont disponibles en podcasts ainsi qu’une préparation au grand oral avec de nombreux conseils pratiques.

S’abonner

 

Des vidéos de cours pour comprendre en image

Des vidéos de cours illustrent les notions principales à retenir et complètent les fiches de cours. De quoi réviser sa prochaine évaluation ou son prochain examen en toute confiance !

S’abonner

Découvrez le soutien scolaire en ligne avec myMaxicours

Plongez dans l'univers de myMaxicours et découvrez une approche innovante du soutien scolaire en ligne, conçue pour captiver et éduquer les élèves de CP à la terminale. Notre plateforme se distingue par une riche sélection de contenus interactifs et ludiques, élaborés pour stimuler la concentration et la motivation à travers des parcours d'apprentissage adaptés à chaque tranche d'âge. Chez myMaxicours, nous croyons en une éducation où chaque élève trouve sa place, progresse à son rythme et développe sa confiance en soi dans un environnement bienveillant.

Profitez d'un accès direct à nos Profs en ligne pour une assistance personnalisée, ou explorez nos exercices et corrigés pour renforcer vos connaissances. Notre assistance scolaire en ligne est conçue pour vous accompagner à chaque étape de votre parcours éducatif, tandis que nos vidéos et fiches de cours offrent des explications claires et concises sur une multitude de sujets. Avec myMaxicours, avancez sereinement sur le chemin de la réussite scolaire, armé des meilleurs outils et du soutien de professionnels dédiés à votre épanouissement académique.

Fiches de cours les plus recherchées

NSI

Comprendre la structure de données des types liste, pile et file

NSI

Utiliser une pile pour évaluer une notation en polonais inverse

NSI

Choisir une structure de données en fonction de la situation

NSI

Rechercher une valeur dans une liste et dans un dictionnaire

NSI

Comprendre la structure hiérarchique des arbres binaires

NSI

Étudier et implémenter un arbre binaire

NSI

Utiliser des arbres binaires de recherche

NSI

Comprendre la structure des graphes

NSI

Implémenter un graphe

NSI

Passer d'une représentation d'un graphe à une autre