De l'intérêt de la POO

Programmation PHP Orientée Objet sous Eclipse

Programmation PHP Orientée Objet sous Eclipse

Depuis la démocratisation de php5, il est possible d'appréhender les projets web d'un point de vue "Objet". Certes, ça n'est pas une révolution, et cette approche était déjà permise, dans une moindre mesure, avec php4. Le but ici n'est pas de promouvoir la POO à tout prix, simplement d'expliquer pourquoi ça peut être utile et comment ça peut être fun.

D'abord, la POO (Programmation Orientée Objet), ça n'a pas de particularité technique. En effet, il s'agit plus d'une manière de concevoir que d'une façon de coder. A ce titre, on pourrait envisager de "coder objet" avec presque n'importe quel langage, et inversement, utiliser un langage objet sans avoir besoin de l'exploiter comme tel.

La POO donc, ça consiste entre autres, à se représenter un programme, un script, une application, dans l'espace plutôt que dans le temps. Grosso-modo, il s'agit de penser en terme d'objets, capables d'interagir entre eux, et pas de lignes de codes qui s'enchaineraient les unes après les autres.

La POO, ça permet de donner un semblant de vie comportement à des entités de données, de variables, de valeurs... qu'on appellera du coup des objets. A l'instant où j'écris ce billet, j'ai à l'écran une zone de texte pour le titre, une autre pour le texte, et un bouton pour enregistrer. Je peux dès lors considérer qu'un billet est un objet, doté d'un titre, d'un texte, et capable de s'enregistrer lorsqu'on lui demandera de le faire.

Sans entrer dans les détails, cette vision des choses offre de nombreux avantages, au nombre desquels on peut citer:

  • la POO encourage le travail collaboratif.
  • la POO simplifie la maintenance.
  • la POO accroît la stabilité.
  • la POO assouplit le code.
  • la POO rend le travail plus agréable.

En contrepartie:

  • la POO est chronophage.
  • la POO consomme des ressources.
  • la POO n'aime pas l'approximation.

Cependant, chacun de ces points est discutable, et s'il faut retenir quelque chose à propos de la POO, c'est qu'elle n'apporte rien qu'on ne se donne pas la peine d'implémenter. A contrario, elle offre un cadre de travail efficace, et encourage la réflexion, en délestant le programmeur de fastidieuses tâches de codage.

Commentaires

  • gebruik
    • 1. gebruik Le Dim 19 Juil 2009
    La POO était déjà supporté sous PHP 3. La seule nouveauté de la version 5 est de coller véritablement au paradigme de la programmation orientée objet.

    L'idée que la POO est chronophage est un contre-sens pour ne pas dire un non-sens. Tout est question d'approche et de me méthodologie, qui est le principal élément manquant de toute web agency qui se respecte.
    L'adoption de méthodes agiles, avec pour effet d'impliquer son client final à toutes les étapes d'un processus, permet au contraire d'accroître sa productivité.
  • Florian
    • 2. Florian Le Lun 13 Juil 2009

    Hey, belle approche simplifiée de la POO. J'ajouterai tout de même que pour coder en orienté objet, il avoir quelques notions de l'Objet en lui-même. Puisque l'on passe par plusieurs classes, il faut savoir comment les agencer et les appeler. Là où ça devient plus complexe, c'est quand on utilise une "norme" style MVC (Modèle-Vue-Controleur) en PHP par exemple. A ce moment là, il faut bien comprendre le fonctionnement pour lancer toute action.

    En tout cas, il faut avouer que la programmation en objet est beaucoup plus claire. Je dirai même qu'elle est plus rapide à s'exécuter mais cette idée reste très controversée... Je dirai que tout dépend du programmeur ! Et si l'on est très bon (et très faignant, comme tout programmeur) on peut ré-utiliser nos classes pour d'autres projets et ça c'est le pied !

    En tout cas très bon billet ;-)

Ajouter un commentaire