Abstract Class
PHP 🟡 MidDefinition
Classe qui ne peut pas etre instanciee directement et qui sert de modele. Elle peut contenir des methodes abstraites (sans corps) et des methodes concretes.
Analogie
Comme un plan d'architecte : il definit la structure mais on ne peut pas y habiter, il faut d'abord construire la maison.
Exemple de code
abstract class Shape {
abstract public function area(): float;
public function describe(): string {
return get_class($this) . ': ' . $this->area();
}
}
Cas d'usage
Quand plusieurs classes partagent une logique commune mais doivent chacune implementer certains comportements specifiques.
Anti-pattern
Utiliser une classe abstraite la ou une interface suffirait, creant un couplage inutile.