Cours POO Part1
Cours POO Part1
Cours POO Part1
POO
Comparaison
La méthode que vous employez pour développer un
site web
VS
La méthode POO
Objet
Variables :
entier
réel
chaine de caractères
tableau
....
⇒ Ce type de variables est limité et ne suffit pas
Classe vs Objet
Une classe Fruit, les objets de cette classe : Pomme, Banane,
Ananas, ...
Une classe Voiture, les objets de cette classe : Renault, Mer-
cedes, Peugeot, ...
Instanciation
Les classes sont des fabriques d’objets : on construit d’abord l’usine
avant de produire des objets (instances)
On instancie un objet (c-à-d. qu’on le produit à partir de l’usine (classe))
en appelant le nom de sa classe comme s’il s’agissait d’une fonction
uneDate : est une classe
new uneDate(), $date1 et $date2 : sont des objets ou bien des
instances
En cas de problèmes : [email protected] ENS - Tétouan 11/47
Web Dynamique avec PHP
Web Dynamique avec PHP
Programmation orientée objet (POO)
Classe
Instanciation
Les classes sont des fabriques d’objets : on construit d’abord l’usine
avant de produire des objets (instances)
On instancie un objet (c-à-d. qu’on le produit à partir de l’usine (classe))
en appelant le nom de sa classe comme s’il s’agissait d’une fonction
uneDate : est une classe
new uneDate(), $date1 et $date2 : sont des objets ou bien des
instances
En cas de problèmes : [email protected] ENS - Tétouan 11/47
Web Dynamique avec PHP
Web Dynamique avec PHP
Programmation orientée objet (POO)
Classe
Définition
Exemple :
Classe : uneDate = Attributs + Méthodes
1 Attributs : Ans, Mois, jours, ...
2 Méthodes : definirAns(), ModifierJours(), AjouterSemaine(), ...
uneDate
Ans
Mois
...
definirAns()
...
Ma première classe
Syntaxe
1 <? php
class nomClasse {
// ...
}
?>
<? php
class Voiture {
...
}
5 $v1 = new Voiture () ; // v1 est un objet ( instance ) de la
classe Voiture
$v2 = new Voiture () ;
$v1 - > definirMarque ( ' mercedes ') ;
$v2 - > definirMarque ( ' renault ') ;
echo ' voiture1 = ' ,$v1 - > afficherMarque () , '<br > ';
10 echo ' voiture2 = ' ,$v2 - > afficherMarque () ;
?>
En cas de problèmes : [email protected] ENS - Tétouan 15/47
Web Dynamique avec PHP
Web Dynamique avec PHP
Programmation orientée objet (POO)
Classe
<? php
class Voiture {
...
4 }
$v1 = new Voiture () ; // v1 est un objet ( instance ) de la
classe Voiture
$v2 = new Voiture () ;
$v1 - > definirMarque ( ' mercedes ') ;
$v2 - > definirMarque ( ' renault ') ;
9 echo ' voiture1 = ' ,$v1 - > afficherMarque () , '<br > ';
echo ' voiture2 = ' ,$v2 - > afficherMarque () ;
?>
En cas de problèmes : [email protected] ENS - Tétouan 15/47
Web Dynamique avec PHP
Web Dynamique avec PHP
Programmation orientée objet (POO)
Classe
Ma première classe
Petite question
Ajouter des autres méthodes à la classe Voiture pour définir et
afficher les propriétés $modele et $carburant.
class Voiture {
...
function definirMarque ( $marque ){
4 $this - > marque = $marque ;
}
...
}
class Voiture {
...
3 }
$v1 = new Voiture () ;
$v1 - > marque = ' mercedes ';
Ma première classe
Exercice
1 Créer une classe uneDate composée de
3 propriétés (Ans, Mois et Jours) et des
méthodes pour : définir une date, afficher
une date, afficher la date du jour précé-
dent, de la semaine prochaine, ...
2 Si par exemple la date suivante "12-12-
2022" a été déclarée comme objet, créer
une calendrier.
3 Ajouter des boutons : jour suivant, jour
précédent, semaine suivante et semaine
précédente
4 Après avoir cliqué sur l’un des boutons
précédents, afficher un message si la date
va être dans un autre mois que celui de
octobre
En cas de problèmes : [email protected] ENS - Tétouan 18/47
Web Dynamique avec PHP