IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

L'usage des classes en PHP est-il abusif ? Un développeur allemand pense que oui


Sujet :

Langage PHP

  1. #41
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    Il est vrai qu'il y en a qui utilise des classes comme des sacs à fonctions.
    en quoi c'est mal ?faut bien que static serve a quelque chose, non ?
    la classe était la premiere fonctionnalité a permettre ça en php, c'est normal.

    du coup mes helper sont rangé par theme et quand un newbi lit mon code, il sait ou est défini ma fonction. j'ai que ça a dire.

    sur l'auteur de la proposition, 17 ans ça pousse a être audacieux, mais il est a porté de chacun de soumettre un bug ou une demande d'évolution qui sera acceptée. A 17 ans on a pt'tre juste plus le temps de pousser son ticket pour qu'il avance.
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  2. #42
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2010
    Messages : 657
    Points : 1 240
    Points
    1 240
    Par défaut
    Quand on travaille avec 50 développeurs sur un projet , j'ai du mal à croire qu'on peut se contenter de faire 1 fichier avec 500 fonctions.

    Le gars est jeune et à cet age on est généralement retissant à utiliser des frameworks parce qu'on ne comprend pas les problèmes qu'ils résolvent ( par manque d'experience...).

    Il changera d'avis quand il devra bosser en équipe , faire des tests unitaires et d'intégration , faire une doc de son API ,modéliser la logique métier de son application , et surtout , utiliser d'autres librairies de code conçues en respectant les principes de la POO.

    Cependant aujourd'hui , avec des frameworks tels que Silex ou Slim , les développeurs , même allergiques à la POO n'ont plus vraiment d'excuse pour vouloir réinventer la roue ...

  3. #43
    Membre éprouvé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Points : 1 264
    Points
    1 264
    Par défaut
    Bonjour à tous.
    Je connais assez mal PHP, donc je ne me permettrai pas d'aller sur ce terrain. Je vais donc rester sur celui ô combien prometteur de la programmation structuré (ou procédurale) vs la POO vs la programmation objets.

    Déjà, n'oublions pas un truc simple : la POO c'est de la programmation ORIENTEE objets. Pas confondre avec la Programmation Objets, ceux qui en ont fait comprendront...

    Après c'est super simple : c'est comme les voitures...
    pour la ville on a besoin d'une petite citadine. Pour la route, on a besoin d'une berline, pour la F1 on a besoin d'une bête de course et pour le Paris-Dakar on a besoin d'un gros 4x4 bien costaud.

    Ben la programmation c'est pareil : pour transformer une chaine en majuscules, on a juste besoin d'une fonction. Pour gérer une fenêtre d'une appli, c'est vrai qu'une classe semble bien adaptée et assez pratique. Et certains cas réclameront OBLIGATOIREMENT une classe (perso j'ai pas encore trouvé).

    Après, il est clair qu'on voit des gros 4x4 bien costauds en ville. C'est spectaculaire, mais ils ont du mal à se garer. Certains comiques (que je respecte) s'attaquent aux rallyes en dedeuche ou en Rolls. C'est classieux ou osé, mais en général ils gagnent pas. Certains essaient de faire de la course sur circuit en berline. C'est impressionnant, mais eux non plus ils ne gagnent pas.

    ben voila. Je peux faire une classe pour transformer une chaine en majuscules, mais ça sert à quoi ? Et me refaites pas le coup de "ouais mais tu comprends, comme ça je peux faire un héritage pour ajouter quelque chose..." Et tu vas rajouter quoi au juste ?

    Donc par pitié, cessons ce fanatisme obscurantiste !
    Il est vrai que certains langages sont plus ou moins "POO". Mais c'est juste un choix !

    Quant au débat intéressant au demeurant sur la facilité de maintenir du code objet ou procédural, ben moi j'ai une réponse simple :
    Quand un goret programme comme un goret, il fera des procédures dégueulasses ou des classes dégueulasses.
    Mais à mon humble avis, une procédure dégueulasse sera moins difficile à entretenir qu'une classe merdique...


    Allez la petite dernière pour me faire des potes :
    Le langage machine il est procédural ou OO ? Nan je dis ça parce qu'au final, tout en revient au langage machine, alors cette guerre procedure/classes me semble quelque peu... puérile...
    "L'incohérence de ceux qui dirigent et l'incompétence de ceux qui critiquent sont un vibrant hommage à ceux qui exécutent."
    Général George S. PATTON. Messine 1943.

  4. #44
    Membre à l'essai
    Inscrit en
    Août 2012
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Août 2012
    Messages : 16
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par Tryph Voir le message
    j'aime pas les fonctions de plus de 500 lignes, j'aime pas les variables globales, j'aime pas les variables nommées toto et les fonctions avec des noms qui ne veulent rien dire...
    Je suis tout a fait d'accord avec ce que tu dis, comme quoi, on peut s'entendre sur certaines choses

  5. #45
    Membre éprouvé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Points : 1 264
    Points
    1 264
    Par défaut
    Citation Envoyé par Tryph Voir le message
    j'aime pas les fonctions de plus de 500 lignes, j'aime pas les variables globales, j'aime pas les variables nommées toto et les fonctions avec des noms qui ne veulent rien dire...
    La principale raison d'exister d'un fonction, est... de remplir une fonction. Et si ce qui doit être fait par la fonction en question demande plus de 500 lignes, ben pourquoi pas ?
    Les variables globales ne sont pas dénuées de vertue ! Je préfère largement une variable global simple et explicite qu'un ignoble bricolage classique (je veux dire dérivé d'une classe ) qui va rendre la compréhension hardue, et le fragiliser le code.
    Moi j'aime bien les variables qui s'appellent toto. Elles ont un avantage énorme à mon avis : on sait tout de suite leur importance...

    Pour les noms de fonctions, je suis d'accord avec toi, je les aime explicites mais pas trop longs...
    "L'incohérence de ceux qui dirigent et l'incompétence de ceux qui critiquent sont un vibrant hommage à ceux qui exécutent."
    Général George S. PATTON. Messine 1943.

  6. #46
    Membre chevronné

    Homme Profil pro
    Mentaliste
    Inscrit en
    Mars 2008
    Messages
    872
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Mentaliste
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 872
    Points : 1 813
    Points
    1 813
    Par défaut
    Citation Envoyé par stailer Voir le message
    Donc je persiste et signe : Symfony, ZF, Code Igniter.. Allez y à fond !! même pour débuter !
    C'est comme ça qu'on fait en Java et C# et PHP propose aujourd'hui ces vrais outils de dévs professionnels.
    Je te laisse lire le blog d'une personne bien plus compétente que moi dans le domaine, qui explique la loi des abstractions qui fuient

    Dit en résumé et à ma façon : oui, c'est très bien, très pratique, pour commencer et apprendre les bases de la POO mais il arrivera forcément toujours, absolument toujours, un jour où quelque chose ne fonctionnera pas correctement, le débutant (ou la personne qui s'autoproclamera "confirmée" (il y en a tellement...)) qu'il ne pourra jamais résoudre le problème sans avoir certaines bases (= connaître les fonctions de base de Php, et pour pousser plus loin, connaitre le système sur lequel ça tourne, voire connaître le C donc avoir appris aussi à ne pas faire de programmation POO). Donc à mon sens, savoir la POO, et aussi savoir la programmation linéaire c'est comme le reste : ça ajoute juste des cordes à son arc, mais ça n'est pas une fin en soi.

    Par contre je suis tout à fait d'accord avec le fait qu'un article très orienté écrit par une personne de 17 ans encore à l'école semble pris autant au sérieux.
    .I..

  7. #47
    Membre chevronné
    Avatar de lilington
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 681
    Points : 1 944
    Points
    1 944
    Par défaut
    Faut dire que le liens que tu donnes est magnifique, le joel machin la explique bien les choses avec des examples parfois grossiers mais juste.
    Petit lien vers mon premier jeux SDL2/C
    http://store.steampowered.com/app/72..._Soul_Of_Mask/
    la suite? ca vient,ca vient!

  8. #48
    Membre chevronné
    Avatar de lilington
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 681
    Points : 1 944
    Points
    1 944
    Par défaut
    en fait hein!
    c'est typiquement humain et desagreable cette manie de dire:
    "moi j'utilise ca et c'est mieu toi tu utilises ca c'est parceque tu connais rien en faite"
    ou
    "pfff, c'est archaique aujourd'hui tout le monde utilise ca tu devrais evoluer"

    vous l'avez sans doute compris le premier point c'est pour les anti classes et le deuxieme c'est pour les pro classes.

    mais c'est humain , l'homme veut que tout le monde fasse comme lui.
    le avec ou sans classe m'agace et perso j'utilise pas de classe et les commentaires du genre:

    1- "A l'arrache" -> procédural
    2 -"Professionnel" -> objet
    ecris a la premiere page, me montre surtout l'incompetence de l'intervenant, car je pense que Windows (j'ai pas vu le code mais de devine) et le noyaux linux sont pas ecrit avec des classes, donc c'est pas professionnel?

    en verite ca ete deja dit 10000000 fois, on ecrit selon les besoins.
    j'utilise pas d'objet car j'en ai pas trouve l'utilite, et je ne force personne a me copier.
    l'argument comme quoi l'objet est plus maintenable est une foutaise absolut. je dirai que c'est une question d'habitude, je me retrouve mieux en lisant du procedural que de l'objet ou j'ai tendance a me perdre.
    j'ai la chance de travailler avec des gens qui sont pas des dictateurs et dans mon equipes je fais du C quand d'autres font du C++ et je no projets s'accordent sans que personne n'ait jamais demander au autre d'arreter le procedural/objet.
    chaqu'un utilise selon ses habitudes, son efficacite et ses besoins ce qui lui convient.

    c'est la derniere fois que j'intervient dans un debat objet vs procedural.
    et pour ce qui sont perturber par la violence du debat et savent pas quoi choisir je leur dit:

    Apprennez LES DEUX et utiliser le bon au bon moment. ca ne vous tuera pas.
    Petit lien vers mon premier jeux SDL2/C
    http://store.steampowered.com/app/72..._Soul_Of_Mask/
    la suite? ca vient,ca vient!

  9. #49
    Membre éprouvé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Points : 1 264
    Points
    1 264
    Par défaut
    Citation Envoyé par SurferIX Voir le message
    Je te laisse lire le blog d'une personne bien plus compétente que moi dans le domaine, qui explique la loi des abstractions qui fuient
    Quel magnifique article ! Et e vais même aller plus loin : il y a quelques dizaines n'années, en BTS et en école d'ingé, j'ai eu des cours de techno informatique : un ordi coment ça marche, multiprogrammation, PowerGood, multitâche, binaire, MFM, bande 6250 BPI et j'en passe et des meilleurs. Ca me permet d'avori uen certaine culture générale que les jeunes n'ont plus, et qui pourtant me semble importante, ne serait-ce qu pour mesurer combien l'informatique a progressé. Ca rend philosophe...

    Citation Envoyé par SurferIX Voir le message
    Par contre je suis tout à fait d'accord avec le fait qu'un article très orienté écrit par une personne de 17 ans encore à l'école semble pris autant au sérieux.
    Je suis pas sur d'avoir bien saisi le sens de cette phrase. Si tu sembles surpris qu'on accord autant d'importance à un "môme" de 17 ans, je suis pas tout à fait d'accord. Certains jeunes de 17 ans font preuve d'une incroyable maturité... Pas moi rassurez vous !
    "L'incohérence de ceux qui dirigent et l'incompétence de ceux qui critiquent sont un vibrant hommage à ceux qui exécutent."
    Général George S. PATTON. Messine 1943.

  10. #50
    Membre chevronné
    Avatar de stailer
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mars 2003
    Messages
    1 136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Hautes Pyrénées (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 136
    Points : 2 187
    Points
    2 187
    Billets dans le blog
    3
    Par défaut
    lilington : merci pour "l'incompétence" etc... Toi c'est sur, tu ne rends pas du tout le débat violent.

    Bref,

    1 - je parlais pour du dev web évidemment. Je vois pas mieux que MVC ou l'automatisation avec des objets.
    2 - il s'agit, pour un dév, de travailler en équipe...
    3 - je donnais mon avis et cherchait une explication sur le fait que php ait une si mauvaise réputation.
    4 - Je ne parlais pas de "technique" du développeur X ou Y.. je parlais des fondations de PHP.

    L'ensemble des projets que j'ai repris à la sauce procédurale ou presque entièrement procédurale sont des catastrophes ambulantes.

    L'ensemble des projets que j'ai repris, qui étaient bien structurés :
    - en utilisant au minimum l'ancienne méthode des namespaces : "fichier cla/clb.php = classe cla_clb"
    - pourquoi pas du MVC
    - des classes qui automatisent un minimum la DB ou un projet qui utilise Doctrine ou ADODBPHP ou NotORM par exemple.
    Ceux-la étaient déjà plus faciles à maintenir ce qui semble logique.

    Voilà ce que moi je peux dire au bout de 10 ans d'expérience.

    Concernant les critiques "PHP c'est de la merde", "PHP c'est pas objet" , c'est la réalité des choses.
    Il manque en fait à PHP un IDE avec autant de notoriété que Visual Studio et qui nous ferait "oublier" le mode procédural.

    Donc oui :

    1- "A l'arrache" -> procédural
    2 -"Professionnel" -> objet

    EDIT :
    lilington :
    Apprennez LES DEUX et utiliser le bon au bon moment. ca ne vous tuera pas.
    Oui ben alors, commencez par l'objet... une fois que vous aurez compris comment ça marche en php, forcément vous aurez compris le procédural.

    Au fait, il m'arrive sur de très petits projets de faire du "procédural" mais attention : avec de l'objet

    Je m'explique : une classe qui wrappe les url pour atterir dans le fichier que je veux + Smarty 3 pour la séparation code/vue + Doctrine pour MySQL (voire ADODB PHP quand je fais du (beurk) ACCESS)

    En dév Web/PHP, y a rien de plus important que l'objet. C'est la base de tout.
    Le procédural et l'utilisation des fonctions vient de lui-même... C'est rien ça.
    .o0o__St@iLeR__oOo.

    Lead Developer

    ASP.NET MVC - MCP/MCSD ASP.NET
    PHP Zend Framework / PhalconPHP
    Cordova/Xamarin IOS/Android
    Kendo UI - ExtJS - JQwidgets
    SQL Server / MySQL

  11. #51
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 10
    Points : 9
    Points
    9
    Par défaut
    Ben perso, je suis de ceux qui pense qu'a chaque situation sont développement particulier.

    Je pense que pour un projet simple pas besoin de s’embêter avec des classes. Par contre si le besoin s'en ressent je n'hésite pas.

    Par contre j'aurais vraiment envi de me mettre à symfony ... je n'ai pas encore réussi à l'installer nulle part. A chaque tuto que j'ai testé il y avait plusieurs ambiguïté qui m'ont bloqué au final.

    Je préfèrerais l'installé sur mon Wamp/Easyphp ... mais toujours des soucis d'install. Et VMWare je ne maitrise pas du tout ...

    Qqun pourrait me donner un coup de pouce avec un lien ou autre ?

    Merci

  12. #52
    Membre chevronné
    Avatar de lilington
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 681
    Points : 1 944
    Points
    1 944
    Par défaut
    lilington : merci pour "l'incompétence" etc... Toi c'est sur, tu ne rends pas du tout le débat violent.
    J'appreci particulierement que tu aies du sang froid et que tu te soies pas emporte dans des !@#$% qui n'auraient rien donne, c'est rare de nos jours.

    bref (aussi je regarde bref)

    le truc c'est que je comprend bien ce que tu dis surtout apres ton dernier poste mais je ne comprends toujours pas pourquoi c'est mieux de faire de l'objet (et aussi pourquoi c'est pas mieux). j'ai donne mon cas personnel ou j'evite l'objet quand je peux, il m'arrive de coder objet (en python) mais il me vient rarement a l'esprit de penser objet dans un premier temps.
    et je me demande si ca fait de mois un programmeur a l'arrache? (c'est une vrai question pour toi hein)

    bon visiblemement tu es OK pour apprendre les 2 mais en cequi concerne l'ordre d'apprentissage fait comme tu veux. je pense personnellement que ca depend de la maniere dont le cerveau de celui qui etudie fonction.
    - il y a des gens (mon cas) qui prefere comprendre ce qui se passe derrier avant de s'attaquer au resultat.
    - d'autre (mon boss justement) prefere apprendre la l'essentiel et apprendre ce qui se passe en arriere plan au fure et a mesure du besoin.

    je pense que les 2 approches sont bonne et depende des gens. l'essentiel c'est connaitre les DEUX.

    Je pense que pour un projet simple pas besoin de s’embêter avec des classes. Par contre si le besoin s'en ressent je n'hésite pas.
    ca aussi c'est une affirmation gratuite, car ecrire un kernel ou faire des pilotes seraient des projets simple?
    le choix objet/procedural ne doit pas dependre de la simplicite du projet ou non mais plutot de l'apport de l'un avantage/inconvenients par rapport a la situation.
    un projet simple peut necessite de l'objet quand une l'objet peut devenir une tard dans un autre projet dit complexe.
    Petit lien vers mon premier jeux SDL2/C
    http://store.steampowered.com/app/72..._Soul_Of_Mask/
    la suite? ca vient,ca vient!

  13. #53
    Membre éprouvé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Points : 1 264
    Points
    1 264
    Par défaut
    Citation Envoyé par lilington Voir le message
    en fait hein!
    c'est typiquement humain et desagreable cette manie de dire:
    "moi j'utilise ca et c'est mieu toi tu utilises ca c'est parceque tu connais rien en faite"
    ou
    "pfff, c'est archaique aujourd'hui tout le monde utilise ca tu devrais evoluer"
    Tout a fait exact ! L'évolution est un droit, non un devoir. Donc si on est bon quelque part, en raison de quel dogme devrait-on forcément évoluer ?

    Citation Envoyé par lilington Voir le message
    ecris a la premiere page, me montre surtout l'incompetence de l'intervenant, car je pense que Windows (j'ai pas vu le code mais de devine) et le noyaux linux sont pas ecrit avec des classes, donc c'est pas professionnel ?
    +1 rien que pour ça ! Comme quoi on arrive à faire des trucs d'enfer (au propre et au figuré suivant les cas) sans POO...

    Citation Envoyé par lilington Voir le message
    chaqu'un utilise selon ses habitudes, son efficacite et ses besoins ce qui lui convient.
    On revient sur la liberté de chacun et sur l'éefficacité globale...

    Citation Envoyé par lilington Voir le message
    c'est la derniere fois que j'intervient dans un debat objet vs procedural.
    et pour ce qui sont perturber par la violence du debat et savent pas quoi choisir je leur dit:

    Apprennez LES DEUX et utiliser le bon au bon moment. ca ne vous tuera pas.
    Effectivement, plus besoin d'intervenir après ça ( pour moi) tout a été dit...
    "L'incohérence de ceux qui dirigent et l'incompétence de ceux qui critiquent sont un vibrant hommage à ceux qui exécutent."
    Général George S. PATTON. Messine 1943.

  14. #54
    Membre chevronné
    Avatar de lilington
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 681
    Points : 1 944
    Points
    1 944
    Par défaut
    On se fait la bise?
    t'apporte le vin et le fromage,moi les bouquins de POO et de procedural, c'est bon comme ca?
    Petit lien vers mon premier jeux SDL2/C
    http://store.steampowered.com/app/72..._Soul_Of_Mask/
    la suite? ca vient,ca vient!

  15. #55
    Membre éprouvé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Points : 1 264
    Points
    1 264
    Par défaut
    Citation Envoyé par stailer Voir le message
    L'ensemble des projets que j'ai repris à la sauce procédurale ou presque entièrement procédurale sont des catastrophes ambulantes.
    Peut être plutôt parce que c'est des gorets qui ont fait le boulot non ?
    Citation Envoyé par stailer Voir le message
    Voilà ce que moi je peux dire au bout de 10 ans d'expérience.
    Voila ce que je peux dire après 25 ans d'expérience...

    Citation Envoyé par stailer Voir le message
    Concernant les critiques "PHP c'est de la merde", "PHP c'est pas objet" , c'est la réalité des choses.
    Non non non et non. PHP a été fait dans un but, et je pense que pour ce pour quoi il a été fait, il est bon... Maitnenant si on veut absolument lui faire faire des choses qui n'étaient pas prévues au départ, alors oui ca peut partir en vrille. Je reprends mon illustration de l'immeble prévu pour 2 étages. Si on veut en rajouter 5 après y a de fortes chances qu'il se casse la gueule...
    Citation Envoyé par stailer Voir le message
    Il manque en fait à PHP un IDE avec autant de notoriété que Visual Studio et qui nous ferait "oublier" le mode procédural.
    Encore une fois pourquoi vouloir à tout prix oublier le procédural ? Nous sommes encore dans une architecture informatique de Von Neumann. Le procédural EST donc la seule chose que l'ordinateur connait ! Donc tout ce qui est fait en POO devient au final du procédural !

    Citation Envoyé par stailer Voir le message
    Oui ben alors, commencez par l'objet... une fois que vous aurez compris comment ça marche en php, forcément vous aurez compris le procédural.
    Et ta méthode d'objet, tu l'écris en quoi au juste ? Pas en procédural ?

    Citation Envoyé par stailer Voir le message
    En dév Web/PHP, y a rien de plus important que l'objet. C'est la base de tout.
    Le procédural et l'utilisation des fonctions vient de lui-même... C'est rien ça.
    Mouais... C'st vrai que personne n'est capable de faire un site WEB en procédural, que c'est totalement impossible...
    "L'incohérence de ceux qui dirigent et l'incompétence de ceux qui critiquent sont un vibrant hommage à ceux qui exécutent."
    Général George S. PATTON. Messine 1943.

  16. #56
    Membre éprouvé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Points : 1 264
    Points
    1 264
    Par défaut
    Citation Envoyé par lilington Voir le message
    On se fait la bise?
    t'apporte le vin et le fromage,moi les bouquins de POO et de procedural, c'est bon comme ca?
    C'est pour moi l'invit ? Non je dis ça parce que les heures de ton post et le petit drapeau chinois me font penser que ca va pas être simple...
    "L'incohérence de ceux qui dirigent et l'incompétence de ceux qui critiquent sont un vibrant hommage à ceux qui exécutent."
    Général George S. PATTON. Messine 1943.

  17. #57
    Membre chevronné
    Avatar de lilington
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 681
    Points : 1 944
    Points
    1 944
    Par défaut
    bon sinon j'arrive a comprendre le probleme des gens qui voient tout en objet et pensent meme que c'est pas possible autrement.
    j'ai commencer le php sur le tas. c'etait un stage et on avait des trucs du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $vehicule=Vehicle::getVehiculeByCItyID(12);
    du coup on envoyait le resultat convertis en donnee json et l'affichage etait fait avec JS tranquillou.

    je suis pas un bon web dev, donc quand j'ai voulu me faire une petites application pour gener des trucs a l'epoque et que je ne voulais pas utiliser de classe, j'ai mits du temps a comprendre tout le travail que faisait la class Vehicule et comment faire du simple procedural pour lire des donnnees dans la base et travailler avec surtout que je voulais pas de JS. Il me semblait impossible d'eviter les classes car j'ai appris php/*sql avec des classes.
    bon a la fin j'ai laisse tomber pour faire une application python/gtk ca m'a pris une journee mais la au moins j'ai utiliser des classes quand j'en avais envie

    mais je l'ai dis dans mon poste plus haut mon cerveau fonction dans le sens Bas_niveau ->Haut_niveau. je peux passer de l'assembleur a java mais pas de java a l'assembleur. je suis trop bete pour ca

    Citation Envoyé par arkhamon Voir le message
    C'est pour moi l'invit ? Non je dis ça parce que les heures de ton post et le petit drapeau chinois me font penser que ca va pas être simple...
    c'est surtout le drapeau qui pose probleme... et oui je suis a l'est mais t'en fait pas t'es pas complement a l'ouest non plus hein
    Petit lien vers mon premier jeux SDL2/C
    http://store.steampowered.com/app/72..._Soul_Of_Mask/
    la suite? ca vient,ca vient!

  18. #58
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    je suis d'accord sur un point, hors de l'orienté objet point de salut. Souvent j'ai écris des familles de méthodes avec des paramètres à n'en plus finir, pis un jour je me suis dit "bon on va lever le nez, prendre 10 minutes et utiliser $this, sortir les fonction des fonction (pour éviter quelles soit visible sur l'espace global ) utiliser des méthodes protégées et privées et le fichier a vu sa taille reduire de moitié.

    Le procédural c'est bon pour les débutants. Il est suffisamment difficile de faire fonctionner une condition, une boucle et une variable et de savoir interpréter le message du compilateur php. On le voit tous les jours sur le forum.

    quand au _() suffit pour traduire un texte en procédural, c'est faux. faites un site monolingue et posez les fichiers de de traductions, ajoutez les _() ça ne marchera pas. parce que ya toute une phase d'initialisation à faire pour gettext, qu'en objet on ferai dans le constructeur.
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  19. #59
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    l'avantage de l'objet c'est que c'est "la programmation de confiance", vous avez pas besoin de connaitre le fonctionnement d'une classe pour la dériver. On pourra utiliser des variables de classe sans vérifier qu'elles ont été initialisée car elles sont dans la classe.

    En procédural, vous devez vérifier les parametres de chaques fonctions à chaque appel. Ce que presque personne ne fait parce que ça tuerai toutes les tentatives de programmer en recursif. Résultat les variables ne sont pas controlées et on se trouve avec des trous de sécu qui ont été inventé avant ma naissance dans du code pondu aujourd'hui.

    Quand au code de goret, s'il y a la même proportion dans les deux styles, procédural ou orienté objet alors c'est la victoire de la POO, parce qu'il est bcp plus délicat de faire du code avec classe que sans.
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.

    Utilisez le bouton résolu!

  20. #60
    Membre éprouvé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Points : 1 264
    Points
    1 264
    Par défaut
    Citation Envoyé par gene69 Voir le message
    l'avantage de l'objet c'est que c'est "la programmation de confiance", vous avez pas besoin de connaitre le fonctionnement d'une classe pour la dériver.
    Ca c'est tout à fait vrai, c'est même un des principes fondateurs de cette techno, et son implémentation avec les méthodes privées et publiques lui donne toute sa puissance. Donc ça méritait un +1 !
    Citation Envoyé par gene69 Voir le message
    On pourra utiliser des variables de classe sans vérifier qu'elles ont été initialisée car elles sont dans la classe.
    Voila c'est exactement ce que je reproche au dev moderne : on balance sa merde sans se soucier de sa qualité, on laisse aux autres le soin de corriger... Le j'emn foutisme généralisé conduisant aux plus belles catastrophes. Marrant ça, che Toyota dans les années 70 ils se sont rendu compte que vérifier un élément le plus en amont permettait de réduire les couts au final. Et en info, on fait exactement le contraire...
    Cette façon de faire conduit à cette abomination que les incompétents appellent "fuites mémoire". Doux acronyme utilisé pour masquer son incompétence et son manque de formation. Mon prof d'info m'avait appris un truc :
    Un ordinateur, c'est comme les chiottes : on est prié de les laisser en partant dans l'état dans lesquels on les a trouvés en entrant.
    Si tu laisses la merde sans tirer la chasse, viens pas te plaindre après que quand tu arrives, c'est sale... Vous je sais pas, mais moi quand je veux m'assoir sur le trône, j'aime bien ne pas passer 2 heures avant poru nettoyer... Il m'avait aussi appris ça :
    une fonction, ou un bloc, c'est 3 phases :
    • une initialisation
    • un traitement
    • une fin

    Et tout ce qui apparaissait dans l'initialisation (assignations) devait apparaitre en ordre inverse dans la fin (libération). Ca permet jsutement d'éviter les fuites mémoires... Traitez moi de fasciste et de vieuxc réac, j'adore, je prends même ça pour un compliment...
    Citation Envoyé par gene69 Voir le message
    En procédural, vous devez vérifier les parametres de chaques fonctions à chaque appel. Ce que presque personne ne fait parce que ça tuerai toutes les tentatives de programmer en recursif.
    Je vois pas en quoi ca gène pour la récursivité : si tu t'assures que ce que tu transmets est correct, et que ta fonction produit un résultat correct, alors pas de soucis pour la récursivité... Tout le reste, c'est du pipeau !

    Citation Envoyé par gene69 Voir le message
    Résultat les variables ne sont pas controlées et on se trouve avec des trous de sécu qui ont été inventé avant ma naissance dans du code pondu aujourd'hui.
    Un trou de sécu, c'est pas un autre mot pour désigner un morceau de code qui n'est pas développé dans les règles de l'art ?

    Citation Envoyé par gene69 Voir le message
    Quand au code de goret, s'il y a la même proportion dans les deux styles, procédural ou orienté objet alors c'est la victoire de la POO, parce qu'il est bcp plus délicat de faire du code avec classe que sans.
    Non c'est la victoire de laisser-aller généralisé. Je fais de la POO parce que comme ça, je reporte sur le concepteur de la classe la nécessité de s'occuper de MES légèreté de développeur...
    "L'incohérence de ceux qui dirigent et l'incompétence de ceux qui critiquent sont un vibrant hommage à ceux qui exécutent."
    Général George S. PATTON. Messine 1943.

Discussions similaires

  1. Le TDD est mort ? non, pas vraiment, peut-être que oui
    Par Arsene Newman dans le forum ALM
    Réponses: 61
    Dernier message: 16/07/2014, 15h44
  2. Le TDD est mort ? non, pas vraiment, peut-être que oui
    Par Arsene Newman dans le forum Méthodes Agiles
    Réponses: 30
    Dernier message: 12/06/2014, 11h31
  3. [MySQL] Utilisation des class en PHP/MySQL
    Par mymemorial dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/03/2013, 02h02
  4. [POO] faire des classes en php
    Par gromit83 dans le forum Langage
    Réponses: 2
    Dernier message: 13/04/2006, 17h10
  5. [POO] PHP et la gestion des classes
    Par Acti dans le forum Langage
    Réponses: 7
    Dernier message: 23/09/2005, 01h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo