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 :

POO en PHP5 pour les nuls


Sujet :

Langage PHP

  1. #1
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut POO en PHP5 pour les nuls
    Bonjour,

    je lis et relis la documentation, les cours et tutoriels en version papier, pdf et en ligne sur la programmation objet en PHP5, mais je n'avance guère.
    La raison : les soit-disant cours se bornent à lister les grands principes en les illustrant avec quelques exemples. Et puis on passe à l'étape supérieure. Mais on n'a rien compris à la précédente : pas d'application utile des fonctions et techniques.

    Existe-t-il des tutoriels pour les non-initiés à la programmation objet, dans lequels on voit se bâtir un vrai projet, pas à pas ?

    Version papier, pdf ou en ligne possible.

  2. #2
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Bonjour,

    Fais donc un tour ici
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  3. #3
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut
    Merci pour ce lien.
    Je le connaissais pour la qualité de ses tutos de toutes sortes et de qualité.

    De tous les tutos, c'est certainement le plus abordable. Mais la progression est encore un peu rapide pour moi.
    Je dois préciser que je suis Français, désolé.

  4. #4
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    O.o

    Tu dois préciser que tu es français?
    Et pourquoi?
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  5. #5
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    Il faut bien voir que PHP est un langage de programmation. Tu ne peux pas apprendre "la POO en PHP" en une semaine (avec l'algo au passage), c'est tout simplement irréaliste

    En réalité, tout cela est un véritable cursus, il faut y aller petit à petit et y mettre du tien. Il faut suivre des cours, procéder par étapes.

    Ainsi, ta question est au moins triple :

    1. Il te faut d'abord apprendre l'algorithmique : comment construre un programme, ce qu'est une fonction, une alternative, une boucle etc. Tu pourras trouver ces informations ici : http://algo.developpez.com/cours/
    2. Ensuite, interroge-toi sur la programmation orientée objet, d'un point de vue abstrait : ce qu'est une classe et un objet, quelles interactions sont possibles, etc. Cela se fait par l'analyse en UML : http://uml.developpez.com/
    3. Enfin, tu pourras aborder la POO en PHP en toute confiance, car tu auras appris les bases normalement : http://g-rossolini.developpez.com/tutoriels/php/cours/

    Note que PHP n'est presque jamais utilisé seul. D'autres technos sont habituellement en relation directe :


    Pour info, j'essaie de donner une vue d'ensemble de ces technos ici : http://g-rossolini.developpez.com/tu.../web-debutant/

  6. #6
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut
    Merci à Yogui dont je lis les tutos et cours.

    Pour info, je programme déjà en PHP3-4-5 en exploitant parfois des classes toutes-faites (EzSql, Class Upload, etc... trouvées sur phpclasses.org) et des fonctions POO de PHP5 (SimpleXml). Et ça marche très bien, en tant que consommateur.

    Je cherche à apprendre à devenir un producteur de ce genre d'outils. Mais cela suppose de PENSER autrement la conception même des projets.
    Dur dur quand on a pris des habitudes certainement mauvaises de programmation procédurales.
    Pire, lorsqu'elles fonctionnent. Si elles plantaient, je me serais remis en question plus tôt...

    Merci pour à tous les 2 pour les liens.

  7. #7
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Attention aussi, un danger est de croire que le code que l'on trouve ailleurs est idéal, parfait. En réalité, ce code n'est pas toujours exemplaire... Les habitudes que tu as sans doute prises en tant que consommateur ne sont ainsi pas nécessairement bonnes, il faut que tu les remettes en question au fur et à mesure de ta lecture des tutoriels que je t'ai indiqués. Ces articles, en revanche, ont été relus par diverses personnes et je te garantis leur qualité

  8. #8
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Je suis un tout petit peu hors-sujet, mais les tutos sont pour moi un moyen d'approfondir des notions. Pour partir de zéro, rien de tel que les bouquins.
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  9. #9
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut
    Dans l'immédiat, compte-tenu des mises en garde de Yogui sur l'usage de classes en kit glanées sur le net, je pense prioritairement travailler avec des classes natives de PHP, genre PDO, SimpleXml, DomDocument, etc...

    Cela devrait permettre de rentrer dans la logique de programmation objet à partir d'outils fiables et certainement évolutifs.

    A ce propos, est-il possible de concevoir des sites en PHP5 uniquement avec des classes natives de PHP5 ? En connaissez-vous d'autres que celles que j'ai citées qui peuvent servir dans "la vie de tous les jours" ?

  10. #10
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Je disais simplement qu'il ne faut tomber dans aucun excès. D'un côté, les classes "autonomes" glanées ici et là et ne s'inscrivant dans aucun framework sont parfois "améliorables" et peuvent donner de mauvaises habitudes à un non initié (souvent mais pas toujours). D'un autre côté, utiliser uniquement les classes "php.net" (core + pecl + pear) est trop restrictif. Il faut savoir jongler avec les deux


    [Edit] Un bon indicateur est simplement la taille du projet. Si tu utilises un framework par exemple, plus le projet est gros et avec une large base d'utilisateurs et surtout de contributeurs, plus tu as de chances que les "bonnes pratiques" soient respectées.

  11. #11
    Membre expérimenté
    Avatar de Rakken
    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 257
    Points : 1 341
    Points
    1 341
    Par défaut
    A ce propos, est-il possible de concevoir des sites en PHP5 uniquement avec des classes natives de PHP5 ? En connaissez-vous d'autres que celles que j'ai citées qui peuvent servir dans "la vie de tous les jours" ?
    Oui, sans le moindre problème. Et d'un point de vue didactique, c'est excellent. Comprendre des concepts qu'on peut lire dans des tutos, c'est une chose, mais les intégrer véritablement, c'en est une autre, et c'est seulement quand on se retrouve confronté à un problème et qu'on a réfléchit aux solutions envisageables qu'on peut véritablement comprendre le pourquoi des choix.

    Bref, faire au moins un site d'envergure avec peu ou pas d'outil, c'est formateur. Mais d'expérience, pour que le site en question soit vraiment carré, il faudra que tu le recommences au moins deux fois de zéro ^_^
    Les frameworks ont effectivement l'avantage de te cadrer et de forcer l'utilisation des concepts défini par le créateur du framework. Mais d'un autre coté, si tu ne fais pas l'effort d'aller plus loin, tu ne sais au final pas pourquoi ca fonctionne comme ca. Et puis chaque framework doit "s'apprendre". On utilise pas un framework en claquant des doigts pour faire ce que tu veux. Donc sur des petits ou moyens projets, je ne suis pas forcément partisant de leur utilisation (sauf à but avoué d'apprentissage où si tu le maitrises déjà suffisament pour ne pas perdre trop de temps en recherche). Sur des gros projets en revanche, notamment dans le cas d'un travail a plusieurs, le fait d'être cadré dans le développement permet d'avoir une cohérence globale qui aide largement à la maintenabilité du code.

    Par contre, j'adhère à l'utilisation ponctuelle et réfléchie de classes dédiées à des problèmes très particuliers. Comme par exemple jpgraph pour faire des graphiques.

    Pour les classes que tu as cité, je mettrai un léger bémol sur PDO, qui, s'il fonctionne nickel avec MySQL n'est tout simplement pas fini pour Oracle.
    Rakken

    Oneira, un monde imaginaire d'Heroic Fantasy.

    Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/

  12. #12
    Membre habitué Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Points : 190
    Points
    190
    Par défaut
    Merci à Rakken pour ces avis.

    Je n'utilise pas de Framework pour éviter justement les systèmes clés en mains, dont on finit par ne plus pouvoir se passer. Je préfère développer des outils de production qui correspondent à MES besoins plutôt que de rentrer dans le moule des frameworks.

    Pour ce qui est des classes natives et de PDO en particulier, je ne travaille que sur Mysql.

    En connais-tu d'autres du genre PDO, mais sur d'autres domaines d'action ?
    Je citais SimpleXml et DomDocument.

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/02/2007, 12h02
  2. Réponses: 6
    Dernier message: 06/11/2005, 11h10
  3. C++ pour les nuls => Linux => Problème
    Par wizardman dans le forum Linux
    Réponses: 6
    Dernier message: 21/09/2005, 00h53
  4. Apprendre le réseau (pour les nuls)
    Par __fabrice dans le forum Développement
    Réponses: 5
    Dernier message: 08/03/2005, 13h49

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