31. Pourquoi la POO ? Concepts et Principes
La Programmation Orientée Objet (POO) est un paradigme qui structure les programmes autour des objets plutôt que des actions et de la logique. Bien que le PHP procédural soit suffisant pour les petits scripts, la POO est obligatoire pour les applications volumineuses, complexes et maintenables (comme celles construites avec des frameworks).
Les Concepts Fondamentaux
1. Classes et Objets
- Classe : Un modèle ou un plan pour créer des objets. (par exemple, le concept d'une 'Voiture').
- Objet : Une instance d'une classe. (par exemple, votre Toyota spécifique, avec sa couleur et son NIV).
2. Encapsulation
Regrouper les données (propriétés) et les méthodes (fonctions) qui opèrent sur ces données dans une seule unité (l'objet). Cela implique également de restreindre l'accès direct à certains composants de l'objet (en utilisant des modificateurs d'accès).
- Objectif : Protéger les données contre les modifications accidentelles et masquer les détails d'implémentation interne.
3. Héritage
Permet à une classe (la classe enfant/sous-classe) d'hériter des propriétés et des méthodes d'une autre classe (la classe parent/super-classe). Cela favorise la réutilisation du code.
- Exemple : Une 'SportsCar' hérite de la classe générale 'Car'.
4. Polymorphisme
La capacité de différents objets à répondre au même message (appel de méthode) à leur manière. 'Poly' signifie plusieurs, 'morph' signifie forme.
- Exemple : Si un objet 'Dog' et un objet 'Cat' ont tous deux une méthode
makeSound(), le Dog aboiera et le Cat miaulera.