date: 2024-04-02
Type: Cours
Projet: Blindcode
Cours: PHPConcepts de Base de la Programmation Orientée Objet (POO) en PHP
La Programmation Orientée Objet (POO) est un paradigme de programmation qui permet de structurer son code de manière plus modulaire et plus intuitive. En POO, tout est considéré comme un objet, qui est une instance d'une classe. Voici les concepts de base de la POO en PHP.
Une classe est un modèle pour créer des objets. Elle définit les propriétés (attributs) et les comportements (méthodes) des objets. Par exemple, une classe Voiture pourrait avoir des attributs tels que marque et couleur, ainsi que des méthodes telles que demarrer() et accelerer().
class Voiture {
// Attributs
public $marque;
public $couleur;
// Méthodes
public function demarrer() {
echo "La voiture démarre.";
}
public function accelerer() {
echo "La voiture accélère.";
}
}
Un objet est une instance d'une classe. Pour créer un objet à partir d'une classe, on utilise le mot-clé new.
// Création d'un objet Voiture
$ma_voiture = new Voiture();
$ma_voiture->marque = "Toyota";
$ma_voiture->couleur = "Rouge";
L'encapsulation est le principe de regrouper les données (attributs) et les méthodes qui les manipulent dans une classe. Les attributs d'une classe peuvent être publics, privés ou protégés. Les attributs privés ne sont accessibles que depuis l'intérieur de la classe.
class CompteBancaire {
private $solde;
public function getSolde() {
return $this->solde;
}
public function setSolde($montant) {
if ($montant >= 0) {
$this->solde = $montant;
}
}
}
L'héritage est un mécanisme qui permet à une classe (appelée classe dérivée ou sous-classe) d'hériter des propriétés et des méthodes d'une autre classe (appelée classe de base ou superclasse). Cela favorise la réutilisation du code et la hiérarchie des classes.
class VoitureElectrique extends Voiture {
public function recharger() {
echo "La voiture électrique se recharge.";
}
}
Le polymorphisme est le principe selon lequel les objets de différentes classes peuvent être traités de manière uniforme. Cela permet d'utiliser une méthode de manière générique, même si elle est redéfinie dans les sous-classes.
class Animal {
public function parler() {
echo "L'animal fait du bruit.";
}
}
class Chien extends Animal {
public function parler() {
echo "Le chien aboie.";
}
}
class Chat extends Animal {
public function parler() {
echo "Le chat miaule.";
}
}
function faireParler(Animal $animal) {
$animal->parler();
}
$chien = new Chien();
$chat = new Chat();
faireParler($chien); // Affiche "Le chien aboie."
faireParler($chat); // Affiche "Le chat miaule."
La programmation orientée objet en PHP permet de concevoir des applications plus structurées, modulaires et faciles à maintenir. En comprenant les concepts de base tels que les classes, les objets, l'encapsulation, l'héritage et le polymorphisme, vous pouvez développer des applications PHP plus efficaces et évolutives.
créé le 2024-04-02 à 17:41