L’héritage ou comment ajouter des fonctionnalités très facilement à une classe existante !
Cette technique de la POO vous sera utile dans bien des cas.
Tout est dans le cours vidéo ci-dessous.
[ppmaccordion][ppmtoggle title= »Afficher le texte de la vidéo »]
Comment profiter de la puissance de l’héritage en PHP ?
Bonjour à tous et bienvenu sur Développement Facile.
On continu ensemble la série de cours consacrée au langage PHP, pour vous aider à créer des sites Internet dynamiques, performants et évolutifs, grâce à une structure de code et aux fonctions PHP à toutes les spécificités PHP que vous allez connaître, maîtriser, et utiliser. Donc là vous allez apprendre, la notion d’héritage en PHP, comment une classe peut hériter des fonctionnalités d’une autre classe, grâce à l’héritage.
L’héritage
Le mot clé extends est utilisé en PHP pour définir une classe qui hérite d’une classe existante, vous faites classe nom de la classe extends le nom de la classe mère, nom de la classe de base. Qu’est-ce que ça signifie l’héritage ? Vous avez une classe, une classe voiture par exemple, classe voiture classique et vous voulez faire une classe voiture spécifique, donc Lamborghini jaune, donc classe voiture spécifique. Qu’est-ce que vous faites ? Vous faites hériter classe Lamborghini, vous là faites hériter de la classe voiture, mère, donc la classe voiture mère vous la faites hériter et vous définissez une classe plus précise, voiture Lamborghini, tout simplement. Vous utilisez classe Lamborghini extends, étend les fonctionnalités de la classe voiture de base. Voilà ce que c’est que l’héritage.
Donc la nouvelle classe qui est créée c’est appelé la classe fille, la classe de base qui a servi à la création, c’est appelé la classe mère, donc la nouvelle classe, la classe fille, elle possède implicitement tous les attribues et les méthodes de la classe mère et elle peut également définir de nouvelles méthodes, de nouveaux attributs, les méthodes c’est 4 roues, accélérer, freiner les phares, les feux, donc ça elle le possède de base la classe fille, après on peut définir par exemple, la puissance, une puissance élevée, le poids, le design, donc ça se sera uniquement dans la classe fille.
Après vous avez un constructeur, vous pouvez le définir dans la classe fille si vous souhaitez appeler le constructeur de la classe mère, vous pouvez utiliser parent::construct, si vous souhaitez appeler une méthode de la classe mère, de la même façon vous faites parent:: le nom de la méthode de la classe mère.
Donc l’héritage comme vous l’avez compris c’est très pratique pour utiliser les propriétés, les méthodes d’une classe existante et ajouter des nouvelles fonctionnalités bien précises par rapport à votre classe fille. Donc par exemple vous avez une classe, un autre exemple, bouton classique, un bouton On/Off, et vous voulez faire un bouton avec du texte qui défile, vous prenez toutes les fonctionnalités du bouton classique, vous faites un classe bouton texte défilant extends le bouton classique, et vous avez juste dans le bouton texte défilant à rajouter la notion de texte qui défile.
Donc l’héritage ça vous permet de gagner énormément temps, de rajouter des nouvelles fonctionnalités à une classe existante et de rendre des classes un peu plus spécifiques, suivant vos besoins.
Exemple de code source
Un exemple de code source, rappelez-vous la classe personne que nous avions utilisée dans un cours précédent, donc nom, prénom, la langue, la date de création de la personne, tout simplement et bien, vous pouvez faire une personne humaine, étant personne, dans cette classe personne humaine, vous allez déjà avoir tout ça qui définit, donc toutes les variables, toutes les méthodes qui sont définies, prêt à être utilisé, donc là on rajoutent le sexe, attributs public, donc le sexe de la personne homme ou femme, ont créé un constructeur, là je vous montre, on appelle le constructeur parents avec les paramètres corrects, on définir le sexe de la personne et on a juste ajouter une seule méthode getsexe, ont créé une nouvelle personne, Mathieu développement homme, on a un programmeur on peut récupérer ses infos parce que new personne ça étend les fonctionnalités de la classe personne, on a la méthode getinfo qui est disponible, on peut très bien aussi, là je vous montre, récupérer le prénom, le nom vu qu’on étend, ça existe par l’héritage, on étend la classe personne, donc le nom est public, donc on peut le récupérer, on peut très bien afficher le prénom si on le souhaite, et on peut utiliser la méthode de la classe personne humaine, évidemment de la classe fille en affichant le sexe. Là c’est un exemple très simple pour vous montrer l’avantage de l’utilisation de l’héritage dans votre développement PHP.
Votre plan d’actions !
Vous trouverez sous ce cours vidéo un exemple en PHP, c’est un récapitulatif de ce cours, donc utilisez l’héritage quand c’est nécessaire, je vous mets en garde, les débutant ont tendance à utiliser l’héritage, à tort et à travers, à dire que c’est le top, moi je vais vous enseigner, vous allez apprendre dans les prochains cours, une méthode plus puissante que l’héritage, plus pratique et sans les inconvénients. Donc vous allez utiliser la composition, c’est plutôt que d’hériter un objet, vous créez une instance de cet objet, vous manipulez l’instance de l’objet, parce que l’héritage par défaut si vous modifiez la classe mère toutes les classes sont modifiées, donc l’évolution de code est très limité avec l’héritage, que par composition vous pouvez faire évoluer « la classe mère » votre objet, vous pourrez toujours l’utiliser par composition il n’aura pas changé. Si vous avez des questions posez-les directement sous ce cours vidéo et moi je vous dis à très bientôt pour le prochain cours sur Développement Facile.
[/ppmtoggle][/ppmaccordion]
Téléchargez le code source PHP
Retrouvez un exemple d’héritage avec le langage PHP.
Téléchargement du code source Exemple de code source avec extends en PHP
Cliquez ici pour télécharger le code source Exemple de code source avec extends en PHP
Dans quel cas, avez-vous déjà utilisé l’héritage ?
Partagez, avec les développeurs, différents exemples où vous avez dû utiliser l’héritage.