pour reprendre l'exemple de la roue :
en procédural, on va faire des fonctions, genre :
_ demonterRoue( $diametre )
_ changerPneu( $typeGomme )
_ gonflerPneu( $pression, $diametre )
avec les infos sur la roue :
_ diamètre
_ pression
_ type de gomme
_ ...
on ballade plein de paramètres, toujours dans le même thème ( la roue ) pour utiliser ces fonctions.
alors on peut passer un tableau en paramètre :
_ demonterRoue( $roue )
_ changerPneu( $roue )
_ gonflerPneu( $roue )
avec $roue = array( 'diametre'=>22, 'pression'=>15, 'typeGomme'=>'dure');
ce qui facilite la vie, niveau écriture.
dans ce cas, autant passer à l'objet, ce qui donne :
$roue->changerPneu();
rien que par ça, le code est plus structuré, plus facile à écrire : on n'est pas embêté par une liste de paramètres.
à partir de là, on peut écrire de l'objet tout simple, ou s'y intéresser et aborder la composition ( des objets dans des objets ), l'héritage ( des objets enrichis ) et les design patterns ( des objets organisés entre eux via des modèles ).
A+
Pascal
en procédural, on va faire des fonctions, genre :
_ demonterRoue( $diametre )
_ changerPneu( $typeGomme )
_ gonflerPneu( $pression, $diametre )
avec les infos sur la roue :
_ diamètre
_ pression
_ type de gomme
_ ...
on ballade plein de paramètres, toujours dans le même thème ( la roue ) pour utiliser ces fonctions.
alors on peut passer un tableau en paramètre :
_ demonterRoue( $roue )
_ changerPneu( $roue )
_ gonflerPneu( $roue )
avec $roue = array( 'diametre'=>22, 'pression'=>15, 'typeGomme'=>'dure');
ce qui facilite la vie, niveau écriture.
dans ce cas, autant passer à l'objet, ce qui donne :
$roue->changerPneu();
rien que par ça, le code est plus structuré, plus facile à écrire : on n'est pas embêté par une liste de paramètres.
à partir de là, on peut écrire de l'objet tout simple, ou s'y intéresser et aborder la composition ( des objets dans des objets ), l'héritage ( des objets enrichis ) et les design patterns ( des objets organisés entre eux via des modèles ).
A+
Pascal