Blog ENI : Toute la veille numérique !
Dernière chance (fin le 29/02) : -25€ dès 75€ sur les livres en ligne, vidéos... code FUSEE25. J'en profite !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. PHP et JavaScript
  3. Les objets
Extrait - PHP et JavaScript Dynamisez vos sites et applications web (avec exercices et corrigés)
Extraits du livre
PHP et JavaScript Dynamisez vos sites et applications web (avec exercices et corrigés) Revenir à la page d'achat du livre

Les objets

Introduction

Ce chapitre va décrire une nouvelle forme de programmation. Jusqu’ici, vous avez utilisé PHP dans un mode procédural, les paragraphes suivants vont vous exposer la Programmation orientée objet (POO).

Il est important de comprendre cette pratique, les frameworks actuels sont écrits en utilisant la POO.

Les frameworks sont des bibliothèques d’outils et constituent des environnements de travail très puissants en vous offrant de multiples ressources prêtes à l’emploi. Vous en avez probablement déjà entendu parler, pour citer les plus utilisés à travers le monde : Symfony, Zend, Laravel, CakePhp, Phalcon, etc.

La programmation orientée objet permet de bien structurer votre code, et facilitera la maintenance et la distribution du code.

Pour pouvoir concevoir un projet en POO, il est important de connaître les concepts de bases de la programmation en PHP, et d’avoir au minimum la version PHP 5.4.

Dans ce chapitre, tout ou presque sera décrit en tant qu’objet. Un objet possède des caractéristiques que l’on appellera des attributs, des actions qui lui sont associées que l’on appellera des méthodes.

Par exemple, si l’on prend un objet véhicule, il peut avoir des attributs tels qu’une couleur et un nombre de roues, et des actions : démarrer, rouler, etc.

Pour...

Les classes

Les classes contiennent les définitions des objets que l’on va décrire et utiliser. Concrètement, c’est un moule qui contient des variables (les attributs) et des fonctions (les méthodes), chacune de ces fonctions ayant accès aux attributs de la classe.

En règle générale, dites-vous que les attributs correspondent à des valeurs (par exemple couleur = rouge, vitesse = 50, etc.).

1. Déclaration d’une classe

En PHP, il est très simple de déclarer une classe, on utilise le mot-clé class, suivi du nom de la classe que l’on veut décrire :


<?php 
  class vehicule { 
 
  } 
?>
 

Il s’agit seulement là du moule, il reste bien entendu à déclarer les attributs et les méthodes de notre classe, mais tout d’abord, il faut comprendre les mécanismes de l’instanciation d’une classe.

Il est fortement conseillé de créer un fichier PHP par classe pour une meilleure lisibilité de votre code, vous pouvez donc ici sauvegarder votre code dans un fichier nommé vehicule.class.php.

2. Instancier une classe

Instancier une classe revient à créer un objet, c’est le résultat d’une instanciation. Pour créer un objet "véhicule", on fera appel à la classe vehicule, de la manière suivante :


<?php 
  $mon_vehicule = new vehicule(); 
 
  $mon_vehicule_secondaire = new vehicule(); 
?>
 

Et voilà ! Ce petit bout de code montre la création de deux instances de la classe vehicule, qui décrit donc la création de deux objets vehicule, que l’on va agrémenter par la suite pour gérer les caractéristiques et les actions de ces véhicules.

3. L’encapsulation

La POO est très utilisée dans les gros projets et le travail en équipe. L’un des avantages de cette programmation est que l’on peut masquer le code (les attributs) aux autres développeurs ou utilisateurs. Ainsi, ils ne pourront qu’utiliser les méthodes (les fonctions) pour changer les valeurs des attributs contenus dans la classe utilisée. Dans cette optique, les attributs sont déclarés comme privés.

Le principe de l’encapsulation...