Impératif et objet
#Impératif et objet
État et contrôle de flux; encapsulation, héritage, composition; SOLID (aperçu).
#Exemple OO simple (Python)
Principes: encapsulation (état privé via conventions), invariants (solde ≥ 0), et méthodes cohérentes.
#Exercice : Hiérarchie de formes géométriques
Implémentez une hiérarchie de classes pour des formes géométriques en utilisant l'héritage et le polymorphisme.
#Instructions
- Créez une classe de base abstraite
Forme
avec une méthode abstraiteaire()
. - Créez des classes dérivées
Rectangle
,Cercle
, etTriangle
qui implémentent la méthodeaire()
. - Ajoutez une méthode
description()
dans la classe de base qui retourne une description de la forme. - Utilisez le polymorphisme pour stocker différentes formes dans une liste et calculer leurs aires.
#Exemple de code
pythonpython
1from abc import ABC, abstractmethod2import math3 4class Forme(ABC):5 @abstractmethod6 def aire(self):7 pass8 9 def description(self):10 return f"Cette forme a une aire de {self.aire()} unités carrées."11 12class Rectangle(Forme):13 def __init__(self, largeur, hauteur):14 self.largeur = largeur