Je voix pas pourquoi c'est dure de passer du procédurale à l'objet puisque les classe sont coder en procédurale
Le paradigme même est complètement différent. L'objet permet un degré d'abstraction, d'indépendance du code qui rend tout travail par après bien plus facile (si correctement employé, sinon c'est pareil voir pire).
Imagine que dans un site e-commerce, tu dois gérer plusieurs types de cartes de crédit. Si chaque type de carte possède sa classe, tu peux utiliser ce qu'on appelle en conception objet un "factory", pour obtenir le bon type de classe sans que le reste de ton programme n'en soit conscient.
Genre, un bout de code, a titre d'exemple:
// $card_data comprend toutes les données envoyées par le formulaire de paiement.
// c'est "l'usine" qui s'occupe de choisir la bonne classe, nous on ne s'en occupe pas.
$card = card_factory::new_card($card_data);
if (!$card->is_valid())
{
// gestion d'erreur
}
$card->invoice_amount('500')
->invoice_currency('euro');
if (!$card->payment_succes())
{
// gestion d'erreur
}
Si une carte venait a changer (méthode de validation par ex.) ou si un nouveau type de carte venait à être supporté, ce bout de code resterait entièrement inchangé.
Pour ajouter un nouveau type de carte, il suffirait d'ajouter sa classe, et de le mentionner dans le fichier de configuration (que l'usine utilise pour détecter le type de carte). Aucune risque de modifier ou de devoir toucher un bout de code préexistant.
Activer ou désactiver un type de carte reviendrait à l'insérer ou pas dans le fichier de configuration, le reste du site étant tout à fait imperturbable quant à la diversité et le type de cartes supportées.
Et il n'y a pas que le procédural et l'objet (qui eux-même se subdivisent en familles). Il y a aussi le fonctionnel (Ha, essaie toujours de faire du traitement parallèle ou distribué sans perdre de cheveux avec du procédural), le déclaratif (Sql, Html...), par aspect, par contrainte, logique, etc.. C'est un peu le fouillis, puisqu'un paradigme n'empêche pas l'autre, mais en gros le meilleur c'est d'en connaître plusieurs, afin de pouvoir choisir, le cas échéant, le meilleur outil pour l'objectif a accomplir.