NSI · Terminale · Structures de données
Programmation orientée objet
Données et méthodes, rangées ensemble.

En bref
La programmation orientée objet regroupe dans une même entité les données et les opérations qui les concernent.
La programmation orientée objet regroupe dans une même entité les données et les opérations qui les concernent. C’est d’abord une façon d’organiser un programme.
Classe et instance
| Classe | Instance | |
|---|---|---|
| Ce que c’est | Un modèle | Un objet construit sur ce modèle |
| Ce qu’elle décrit | Des attributs (données) et des méthodes (fonctions) | Des valeurs concrètes |
| Exemple | Ce qu’est un compte bancaire | Mon compte |
Le constructeur et self
La méthode spéciale d’initialisation est appelée à la création de l’objet. Le paramètre self désigne l’instance en cours : il permet à une méthode de lire et modifier les attributs de l’objet sur lequel elle est appelée.
Écrire un attribut sans self, c’est créer une variable locale qui disparaîtra à la fin de la méthode. C’est l’erreur la plus fréquente du chapitre.
Où vit l’attribut
| Type d’attribut | À qui il appartient |
|---|---|
| D’instance | À un objet |
| De classe | Partagé par tous les objets : un compteur d’instances, une constante |
L’encapsulation
Les attributs ne devraient pas être manipulés directement de l’extérieur : on passe par des méthodes d’accès et de modification, qui peuvent vérifier la validité de ce qu’on écrit.
Python ne l’impose pas : un attribut préfixé d’un souligné signale par convention qu’il est interne. La discipline vient du programmeur, pas du langage.
L’intérêt : on peut changer la représentation interne d’une classe sans casser le code qui l’utilise, tant que les méthodes gardent le même comportement. C’est ce qui rend un programme modifiable.
Héritage ou composition
| Relation | Le mécanisme | L’exemple |
|---|---|---|
| « est un » | L’héritage : la classe reprend attributs et méthodes, en ajoute, en redéfinit | Un compte épargne est un compte |
| « a un » | La composition : un attribut qui est lui-même un objet | Une voiture a un moteur |
Le polymorphisme
Deux classes différentes peuvent proposer une méthode de même nom, chacune avec son propre code. Le même appel produit alors un comportement adapté au type réel de l’objet, sans que l’appelant ait besoin de le savoir.
C’est ce qui permet d’écrire un traitement unique pour une collection d’objets hétérogènes.
Le lien avec les structures de données
La POO est la façon naturelle d’implémenter un type abstrait : une classe Pile expose empiler et dépiler, et cache le tableau ou la liste chaînée qui les réalise.
Une classe bien conçue se juge à ce qu’elle cache, pas à ce qu’elle expose.
Teste-toi
6 questions pour vérifier
Touche une réponse : la correction s’affiche tout de suite.
1.Quelle est la différence entre une classe et une instance ?
2.À quoi sert le paramètre self dans une méthode Python ?
3.Quelle méthode spéciale Python est appelée à la création d’un objet ?
4.Qu’apporte l’encapsulation ?
5.Quelle relation l’héritage exprime-t-il ?
6.En Python, un attribut préfixé d’un souligné est inaccessible de l’extérieur.
0 / 6 questions
Dans l’app, ce chapitre a son quiz complet, chronométré, et tes erreurs reviennent au bon moment pour ne plus les refaire.

La fiche de révision, sur une page
Tout « Programmation objet » sur une seule page A4 illustrée : l’essentiel, les pièges et un mini-test. Elle se débloque dans l’app avec des gemmes — et ton compte gratuit en offre assez pour tes trois premières fiches.

