Introduction à la POO
Fait partie de la section Programmation Orientée Objet du Journey PHP de Coddy. Leçon 2 sur 91.
La programmation orientée objet (POO) organise le code autour d'objets qui contiennent des données (propriétés) et des fonctions (méthodes).
Créez un fichier nommé car.php avec une classe
<?php
class Car {
// corps de classe vide
}Créez un autre fichier appelé driver.php pour utiliser la classe
<?php
require_once 'car.php';Créez un objet à partir de la classe Car en utilisant le mot-clé new
$myCar = new Car();Vérifiez la classe de votre objet
echo get_class($myCar);Sortie :
CarCeci confirme que vous avez réussi à créer un objet à partir de votre classe Car. En POO, une classe est comme un plan, et un objet est ce que vous construisez à partir de ce plan. Le mot-clé new crée une nouvelle instance de la classe.
Défi
MoyenDans ce défi, vous utiliserez une classe Car définie dans car.php et créerez un objet à partir de celle-ci dans driver.php.
Vous devez mettre à jour driver.php :
- Créez un objet à partir de la classe
Caren utilisant le mot-clénewet stockez-le dans$myCar
Le fichier driver affichera le nom de la classe pour vérifier votre implémentation.
Essayez vous-même
<?php
require_once 'car.php';
// À FAIRE : Créer un objet à partir de la classe Car
$myCar = ?;
// Afficher la classe de $myCar
echo get_class($myCar) . "\n";
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Programmation Orientée Objet
1Fondamentaux de la POO
Fichiers externesIntroduction à la POOClasses et objetsLe mot-clé $thisMéthodesPropriétésConstructeur (__construct)Destructeur (__destruct)Récapitulatif - Calculatrice simple4Héritage
Héritage de baseLe mot-clé parent::Redéfinition des méthodesLe mot-clé finalClasses abstraitesRécapitulatif – Hiérarchie des employés7Encapsulation
Public, Protected, PrivateModificateurs d’accès en profondeurAccesseurs et mutateursDissimulation de l’informationPromotion des constructeurs (8.0)Récapitulatif – Système de fiches étudiant10Concepts avancés de la POO
Composition ou héritageInjection de dépendancesClasses anonymesÉnumérations (PHP 8.1)Fibres (PHP 8.1)Approfondissement du clonage d’objetsGénérateurs et itérateurs13Patrons de conception – Partie 2
Patron CommandePatron AdaptateurPatron DécorateurPatron Méthode modèlePatron ÉtatPatron CompositePatron Dépôt2Espaces de noms et chargement automatique
Introduction aux espaces de nomsLe mot-clé useNorme de chargement automatique PSR-4Autoloader de ComposerRécapitulatif - Projet organisé5Interfaces et contrats
Introduction aux interfacesImplémentation des interfacesImplémentation de plusieurs interfacesInterface ou classe abstraiteIndication de type avec les interfacesRécapitulatif - Calculateur de formes8Méthodes magiques
Introduction aux méthodes magiques__toString et __debugInfo__get, __set, __isset, __unset__call et __callStatic__clone et clonage d’objets__serialize et __unserializeRécapitulatif - Collection personnalisée3Propriétés de classe
Propriétés d’instance vs statiquesConstantes dans les classesMéthodes et propriétés statiquesPropriétés privées et protégéesPropriétés en lecture seule (PHP 8.1)Récapitulatif - Gestionnaire de comptes bancaires6Polymorphisme
Révision de la redéfinition des méthodesPolymorphisme via les interfacesAnnotations de type et types unionLiaison statique tardiveRécapitulatif - Processeur de paiements9Traits
Introduction aux traitsUtilisation de plusieurs traitsRésolution des conflits entre traitsMéthodes abstraites dans les traitsTraits par rapport à l’héritage12Patrons de conception – Partie 1
Introduction aux patrons de conceptionPatron SingletonPatron FactoryPatron ObserverPatron StrategyEntraînez-vous par vous-même : Compilateur PHP en ligne