Quand - exactement - utilise-t'on la POO ?

Discussion dans 'Administration d'un site Web' créé par Alorsladaccord, 12 Novembre 2015.

  1. Alorsladaccord
    Alorsladaccord WRInaute occasionnel
    Inscrit:
    30 Juillet 2014
    Messages:
    485
    J'aime reçus:
    0
    Bonjour,

    J'avais il y a quelques temps ouvert un sujet intitulé "Les bonnes pratiques de programmation en PHP".
    Je viens de le relire.
    S'en dégage plusieurs conseils intéressant, mais je n'y trouve pas la réponse à une question précise : Quand - finalement - va-t'on utiliser la POO ?
    Est-ce en fonction de la nature du site ? Ou en fonction d'un travail collaboratif ou individuel ? Ou en fonction d'évolutions à venir ?

    Par exemple, il s'agit de coder un site relativement simple, qui affiche un article, une bibliographie et des liens entre ces articles et leur bibliographie. Je pourrais donc créer des objets "article" et "bibliographie". Mais ça va être des objets simples, avec peu de fonctions et variables. Est-ce bien utile ?

    A la rigueur, je peux quand même utiliser l'objet, même si ce n'est pas utile. Ca serait comme un défis (je n'ai jamais programmé en POO), mais il ne faut pas non plus que ça devienne une faute.


    Bref, j'aurais besoin de vos conseils d'experts !


    Merci d'avance :)
     
  2. rick38
    rick38 WRInaute passionné
    Inscrit:
    23 Février 2013
    Messages:
    1 481
    J'aime reçus:
    195
    La programmation non-objet est devenue une hérésie en informatique depuis longtemps.
    Sauf quand on fait un script batch par exemple, mais ça n'est pas une application (un site web, c'est une application).

    Pour moi je vois ça comme plus de "propreté".
    Si on a un fichier pour le header, un fichier pour le footer, et un fichier pour le contenu (un par page), on fait un include header, etc. Mais les variables du fichier dans le header sont propagées du coup aux autres scripts inclus. Il peut y avoir des variables écrasées par d'autres, où initialisées à ailleurs...
    Alors que si en plus de faire l'include, on doit faire un "header = new Header()" puis "header->display()" alors tout est hermétique, on agit sur le header proprement, comme "header->title = 'home'" sans avoir un $title qui peut être utilisé dans le content, le footer, etc.

    Ca va de paire aussi avec le MVC.

    Bref : si c'est un code qui a des chances d'être vu ou utilisé par d'autres, si on ne veut pas avoir honte, il faut faire de la POO un minimum (rien ne doit se trouver en dehors d'une classe).
    Côté performances ça n'apporte rien par contre.
    C'est pour mieux organiser et réutiliser les classes dans un autre projet, quand tu en feras d'autres, c'est plus simple de reprendre des éléments, car chaque classe est bien indépendante et peut se retrouver dans n'importe quel autre projet.
    C'est comme ça que je vois les choses... après on fait comme on veut, il peut y avoir des bons programmeurs sans utiliser de POO et des mauvais qui utilisent la POO...
     
  3. jeanluc
    jeanluc WRInaute accro
    Inscrit:
    3 Mai 2004
    Messages:
    2 882
    J'aime reçus:
    0
    +1

    Les bons programmeurs ont toujours écrit du code lisible et les mauvais écriront toujours du code pourri, mais la POO est à la mode. Pour les petits projets, elle ne fait qu'alourdir les choses.

    Jean-Luc
     
  4. Alorsladaccord
    Alorsladaccord WRInaute occasionnel
    Inscrit:
    30 Juillet 2014
    Messages:
    485
    J'aime reçus:
    0
    Bonjour à vous !

    J'aime bien la stabilité de rick38. Parce que justement dans l'autre sujet ci-dessus mentionné, les autres membres de wri le contredisent tous quant à l'impérative nécessité d'utiliser l'Objet.
    Mais apparemment ça ne l'a pas fait dévier du tout.

    Perso je n'ai rien contre l'Objet et c'est une occasion d'apprendre. C'est vrai que ça me parait indispensable, vu que si on veut ensuite travailler sur de gros scripts (wordpress, dotclear, IPB...), ils sont désormais tous en Objet, et de longue date d'ailleurs...

    C'est juste que ça me parait malgré tout un peu "lourd" pour un petit site qui liste quelques articles, mais c'est peut-être que je ne vois pas encore comment faire. Une fois qu'on sait, ça parait toujours très simple.

    Voilà. Mais bon, je n'ai pas 50 projets non plus, donc peut-être faut-il que je profite de celui-ci.

    C'est sûr que ça pourrait être réglé en deux requêtes mysqli, trois if et deux while, mais bon...
     
  5. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 022
    J'aime reçus:
    291
    WP n'est pas fort POO, il y a quelques classes mais c'est beaucoup de méthodes globales / programmation spaghetti.

    NB: il y a de bons tutos noob friendly chez Grafikart: http://www.grafikart.fr/formations/programmation-objet-php
     
  6. Alorsladaccord
    Alorsladaccord WRInaute occasionnel
    Inscrit:
    30 Juillet 2014
    Messages:
    485
    J'aime reçus:
    0
    Salut spout !

    "Programmation spaguetti" ? C'est le jargon du milieu ? C'est un fourre-tout, quoi. D'ailleurs j'avais lu que wordpress est très mal codé par rapport à dotclear.

    Merci pour le tutoriel. Entre ça et quelques gros bouquins php de la bibliothèque, je devrais y'arriver assez vite. L'informatique, c'est surtout une question de motivation.

    Ce qui va je sens me poser davantage de problème, ou pour le moins autant, c'est le nouveau Responsive Web design (RWD), qu'il va aussi falloir que j'apprenne.

    Autant dire que j'ai intérêt à faire au plus concis dans un premier temps...
     
  7. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
    Perso j'ai un avis plus nuancé que Rick38, le full POO je ne trouve pas ça géant (faut voir au cas par cas). En revanche ou je semble rejoindre tout le monde c'est dans la notion de "programmation structurée". Je ne sais pas si le terme est encore utilisé mais quelques soit le code (Objet ou procédural), il conviens de d'adopter une grosse rigueur d'écriture pour être compréhensible.

    Le côté POO me fait toutefois un peu sourire car je ne compte plus les cas ou on bazarde l'ancien sans s'en soucier (sur le web) ...

    Le truc qui dicte mes choix c'est la conso machine. Un modèle full objet peut vite devenir lourd si tu brasse énormément d'objets ... Donc écrire une classe oui mais pas forcement pour tout. J'ai vécu des exemple ou j'ai du sortir des objets du code pour revenir a un bête système de requête / boucle / affichage car l'instanciation de multiples objets était une vrai galère machine.

    Le secret de la POO semble donc se cacher dans une bonne vision du modèle globale a produire et une étude réfléchie des ressources qu'il va solliciter.
     
  8. Alorsladaccord
    Alorsladaccord WRInaute occasionnel
    Inscrit:
    30 Juillet 2014
    Messages:
    485
    J'aime reçus:
    0
    Oui en l'occurrence c'est pour un petit site qui liste quelques livres et défintions, un site démo plus qu'un site de trafic, dont les histoires de ressource serveur n'ont point d'importance ici. Mais c'est toujours bon à savoir, merci pour le retour, cher zeb.

    Donc pour vous donner une idée, il va y avoir quelque chose comme 3 tables, Définitions, Livres et Noms avec 5 variables environ. Ce qui ferait donc 3 objets de 5 variables.

    Ca peut être réglé en deux temps trois mouvements avec mysqli, mais si je le fais en objet il faut que j'apprenne la chose, justement. C'est tout l'intérêt, mais encore faut-il que ce soit tout de même utile au final...
     
  9. passion
    passion WRInaute accro
    Inscrit:
    6 Janvier 2006
    Messages:
    3 774
    J'aime reçus:
    152
    Bonjour la programmation poo va de pair avec la méthode mvc.
    Programmer ainsi, c'est t'aider à structurer ton travail. Il n'y a pas de petit ou gros projets. Il y a juste une méthodologie. Et avec le temps et la pratique, tu te rendras compte que tes gros projets sont rapidement fait !
    Gain de temps énorme en maintenance et en évolution.
    Même s'il s'agit d'un petit projet, c'est formateur.
    Le code à l'arrache ne t'apporte rien.
    De plus, grâce à des classes comme PDO, elle te permettra d'accéder et sécurisé tes requêtes sql.
    Bref.... C'est un non sens amha !
     
  10. jeanluc
    jeanluc WRInaute accro
    Inscrit:
    3 Mai 2004
    Messages:
    2 882
    J'aime reçus:
    0
    On est d'accord, mais celui qui fait du code à l'arrache en procédural en fait tout autant en POO.

    Ecrire du code de qualité (lisible, structuré, efficace), c'est une question de compétence et de discipline. Après qu'on fasse du procédural ou de la POO, c'est le choix d'un environnement de travail plus ou moins bien adapté au problème à traiter.

    Jean-Luc
     
Chargement...
Similar Threads - exactement utilise POO Forum Date
A quoi correspond exactement google refferal? Google Analytics 28 Octobre 2013
amazonaws.com : c’est quoi exactement ? Administration d'un site Web 4 Février 2012
Une application web, pas exactement un site Demandes d'avis et de conseils sur vos sites 8 Août 2011
J'ai trouvé 2 sites exactement pareil.... devrais-je leur soumettre mon site quand même Débuter en référencement 16 Juin 2011
Backlinks ? Comment ça marche exactement ? Débuter en référencement 14 Janvier 2011
Les Ancres : c'est quoi exactement ? Débuter en référencement 12 Novembre 2010
Comment Google utilise le spam report Référencement Google 4 Juillet 2020
Utiliser l'influence d'un site pour faire croître un autre Débuter en référencement 15 Mai 2020
Peut on utiliser la même adresse url de lien cliquable régulièrement sans se faire pénaliser? Rédaction web et référencement 4 Mai 2020
Quel plugin est-utilisé ? Demandes d'avis et de conseils sur vos sites 3 Mars 2020
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice