Objectifs de cette leçon
- Comprendre les principes de la programmation orientée objet
- Distinguer classes, objets et instances
- Associer objets réels au modèle objet
Introduction à la Programmation Orientée Objet 🏗️
Imagine que tu construis une maison en Lego. Chaque brique est un objet avec ses propres propriétés (couleur, taille) et ce qu'elle peut faire (s'emboîter, se séparer). La POO, c'est pareil pour le code !
1. Pourquoi la POO ? 🤔
Imagine gérer une bibliothèque sans POO :
Exécution pas à pas
pseudo1/20▶️' Sans POO : on éparpille les données' Sans POO : on éparpille les donnéesLe programme exécute cette action, puis passe à la suivante.Le programme exécute cette instruction, puis passe à la suivante.
😫 Problème : Si on ajoute une info (éditeur, ISBN), il faut modifier TOUT le code !
Avec la POO, on regroupe tout dans un objet :
Exécution pas à pas
pseudo1/23▶️CLASSE LivreCLASSE LivreLe programme exécute cette action, puis passe à la suivante.Le programme exécute cette instruction, puis passe à la suivante.
class Livre: def __init__(self, titre, auteur, annee): self.titre = titre self.auteur = auteur self.annee = annee def decrire(self): return f"{self.titre} — {self.auteur} ({self.annee})" livre = Livre("1984", "Orwell", 1949) print(livre.decrire())
💡 L'objet contient TOUT ce qui concerne le livre. Pour ajouter l'éditeur, on modifie juste la classe Livre, pas tout le programme !
2. Une classe = un plan, un objet = une réalisation 🏭
💡 La classe c'est le plan de construction (comme le plan d'une maison). L'objet c'est la maison construite à partir de ce plan.
3. Les 4 piliers de la POO 🏛️
| Pilier | C'est quoi ? | Analogie |
|---|---|---|
| Encapsulation 🔒 | Protéger les données, on y accède via des méthodes | Une boîte noire : on utilise, on ne voit pas l'intérieur |
| Abstraction 🎮 | Cacher les détails compliqués | Un volant de voiture : simple à utiliser, compliqué à l'intérieur |
| Héritage 🧬 | Réutiliser du code existant | Un enfant qui hérite des traits de ses parents |
| Polymorphisme 📱 | Même nom, comportements différents | Des télécommandes universelles : le bouton "Power" allume n'importe quel appareil |
Exercice pour toi 🎯
Identifie dans la vie réelle des exemples pour chaque pilier de la POO. Par exemple :
- Encapsulation : un distributeur de billets (on voit pas le mécanisme interne)
- Abstraction : une télécommande (on appuie sur un bouton sans savoir comment ça marche)
- Héritage : les animaux (un chien hérite des caractéristiques des mammifères)
- Polymorphisme : différents véhicules qui "roulent" (vélo, voiture, trottinette)
💡 La POO devient indispensable dès que tes projets dépassent quelques centaines de lignes. C'est comme ranger sa chambre : plus tôt tu t'y mets, mieux c'est !
⚡ Simulateur — Introduction à l'OOP
Étape 1/7- Classe = plan de construction (le moule)
- Objet = réalisation du plan (le gâteau)
- Attributs = données de l'objet
- Méthodes = comportements de l'objet
Une classe est un plan de construction. Elle définit la structure et le comportement.