Fiche de cours

Utiliser le paradigme objet

Lycée   >   Terminale   >   NSI   >   Utiliser le paradigme objet

  • Fiche de cours
  • Quiz et exercices
  • Vidéos et podcasts
Objectifs
  • Comprendre la notion de paradigme objet.
  • Utiliser la programmation orientée objet 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 attributs et des méthodes.
  • En Python, tout est objet. Les fonctions dir() et help() permettent d’avoir des informations sur les objets utilisés.
Pour bien comprendre

Savoir programmer une classe en Python.

1. La programmation orientée objet (POO)
a. Généralités
Le paradigme objet se base sur la création et/ou l’utilisation d’objets. On parle également de POO (Programmation Orientée Objet).

En informatique, un objet est une modélisation d’un élément du monde réel. Il s’agit en fait de données et de fonctions qui agissent sur ces données réunies dans une même entité. Ces données sont appelées les arguments de l’objet. Les fonctions sont les méthodes.
On peut se représenter chaque objet comme une capsule qui regroupe des attributs et des méthodes.

objet = attributs + méthodes

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

Chaque objet appartient au moins à une classe. Une classe permet de créer des objets. C’est une famille d’objets équivalents qui représentent un type de données. Un objet, aussi appelé une instance, est un exemplaire particulier d’une classe.
Exemple
En Python, str est la classe des chaines de caractères. Un objet str contient une chaine de caractères et des méthodes.

Par exemple, l’instance (ou objet) mot = ‘poulet’ de la classe str est une chaine de caractères.

La méthode upper() permet de créer une nouvelle instance de la classe str contenant la chaine de caractères ‘poulet’ en majuscule.

Beaucoup de langages permettent la programmation orientée objet.

Il en existe toutefois de deux types : les langages objets à classes (Python, Java, etc.) et les langages objets à prototypes (JavaScript, etc.).

Les langages objets à prototypes ne permettent pas de créer des classes mais permettent de créer des objets dont les caractéristiques sont héritées d’objets déjà existants : on parle de prototypage.
b. Avantages et inconvénients

L’un des avantages de la programmation orientée objet est que l’on peut réutiliser facilement les classes créées. De plus, le principe d’encapsulation des attributs et des méthodes dans les objets rend les codes plus sûrs puisque seule une connaissance des classes permet d’accéder aux données afin de les manipuler.

La programmation orientée objet rend cependant les codes moins performants car les objets sont des structures complexes dont la création et la manipulation demandent plus de ressources informatiques. Le paradigme objet nécessite de plus de se documenter avant de programmer.

2. La programmation orientée objet en Python
a. Généralité
En Python, tout est objet. Dès qu’une variable est créée, elle référence un objet, que ce soit un nombre entier (int), un nombre flottant (float), un tableau (list) ou toute autre structure.
Pour connaitre la liste des attributs et des méthodes d’un objet, on peut utiliser l’instruction : 
dir(nom_de_la_classe) ou dir(nom_de_la_variable).

L’instruction help(nom_de_la_classe) ou help(nom_de_la_variable) permet d’accéder à la documentation de la classe de l’objet utilisé.
Exemple
Les objets de la classe list sont des tableaux.
L’instruction dir(list) renvoie la liste des attributs et des méthodes des tableaux.
En Python, les bibliothèques définissent la plupart du temps des classes.
Exemple
La bibliothèque matplolib contient le module pyplot qui contient des classes, lesquelles permettent de créer des objets qui contiennent toutes les caractéristiques afin de créer des graphiques.
Une fois un objet créé, la méthode show() permet de créer une image numérique du graphique.
b. Création de classes
En Python, la programmation orientée objet consiste à créer des classes avant d’effectuer les traitements informatiques nécessaires à la résolution du problème étudié. Le mot-clé class permet de définir une nouvelle classe.
Exemple
Si l’on veut faire des statistiques, on peut créer une classe SerieStat.
Python Explication
class SerieStat: On définit la classe SerieStat.
    def __init__(self, liste): 
        self.serie
= liste
On définit le constructeur de la classe SerieStat.
    def taille(self):
        return len (self.serie)
On définit la méthode taille qui renvoie le nombre d’éléments de la série statistique.

    def somme(self):
       resultat = 0
       for elt in self.serie:
           resultat
= resultat + elt
       return resultat

On définit la méthode somme qui renvoie la somme des éléments de la série statistique.
    def moyenne(self):
       n
= self.taille()
       return self.somme()/n
On définit la méthode moyenne qui renvoie la moyenne des éléments de la série statistique.
Le code suivant permet ainsi de calculer la moyenne du tableau [1, 2, 3, 4, 5].
Python Explication
serie = SerieStat([1, 2, 3, 4, 5]) On crée l’objet serie de la classe SerieStat.
moy = serie.moyenne() On affecte à la variable moy la moyenne des éléments de la série serie.

Voici l'exécution de ce code sur Python Tutor.

É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

Repérer les bugs : typages, effets de bords, débordements

NSI

Repérer les bugs : structures

NSI

Anticiper les erreurs classiques

NSI

Utiliser Python pour déterminer les mesures des arbres binaires

NSI

Utiliser Python dans les arbres binaires de recherche

NSI

Rechercher et insérer une clé dans un arbre binaire de recherche

NSI

Parcourir un arbre binaire

NSI

Se déplacer dans un graphe

NSI

Utiliser la méthode « diviser pour régner »

NSI

Programmer de manière dynamique