Les classes et objets - POO : En programmation orientée objet, on peut représenter la classe comme la maquette et l'objet comme la matérialisation de la classe.
Les classes
Une classe est comme une maquette où on définit une structure.
Dans une classe, on va définir une logique que l'on va pouvoir exploiter dans un autre endroit.
C'est grâce à une classe, que l'on peut créer autant d'objet que l'on souhaite.
En programmation objet, on commence donc par créer une classe puis on crée nos différents objets. On définit la logique dans une classe et on l'utilise à travers les objets.
Les objets
Objet : entité qui a des caractéristiques et des actions. L'objet peut être une voiture, un téléviseur, une cafetière ... mais ce n'est pas toujours quelque chose de palpable.
C'est une entité qui peut avoir une existence matérielle (chien, voiture ...) ou une existence virtuelle (compte bancaire, évènements ...).
L'objet est la concrétisation, la matérialisation d'une Classe.
- Chaque objet aura des caractéristiques.
Exemple :
Une cafetière
couleur
type
Téléviseur
taille
couleur
- Chaque objet aura des actions qui sont propres à l'objet.
Exemple :
Une cafetière
allumer – éteindre
Un téléviseur
Allumer
Changer de chaîne
En développement Orienté Objet, les caractéristiques s'appellent propriétés et les actions s'appellent méthodes.
L'abstraction
L'abstraction permet de nous concentrer ce qui est important et non sur les détails.
Passons à la pratique en créant notre première classe.
On commence donc par créer la classe avec ses attributs puis on crée autant de nouvels objets que l'on souhaite.
Au lieu de dire créer un objet, on dit créer une instance de classe.
Une instance est un objet, un objet est une instance de classe.
Prenons l'exemple ci-dessous où nous créons une classe Personne.
Pour instancier la classe et donc créer un nouvel objet, nous allons utiliser new.
Créez un fichier Person.php dans votre éditeur de texte.
<?php
class Person
{
public $firstName;
public $lastName;
public $age;
}
$anna = new Person('Anna', 'Didon', 38);
$eric = new Person('Eric', 'Gavaut', 62);
On a définit ci-dessus la classe Person avec comme attribut firstName, lastName et age.
On a ensuite créer deux instances de classe, donc deux nouveaux objets.
Créer une instance de classe, c'est créé une version de mon objet qui va être utiliser sous la forme d'une variable.
Important
Chaque objet "classe" sera dans son propre fichier.
Le nom de fichier est le nom de la classe.
Le nom de la classe est écrit en Upper Camel Case.