|
Publicité ' | ||||||||||||||||||||||||
|
|
#81 | |
|
Membre habitué
![]() Inscription : janvier 2003 Messages : 181 ![]() |
Citation:
__________________
PhpMyObject teck leader http://pmo.developpez.com La justice de l'intelligence est la sagesse. Le sage n'est pas celui qui sait beaucoup de choses, mais celui qui voit leur juste mesure. |
|
|
|
00
|
|
|
#82 | |
|
Expert Confirmé
![]() ![]() Développeur informatique Inscription : février 2005 Messages : 3 031 ![]() |
Citation:
D'ici peut, il je vais faire un article sur les collections d'objets avec PHP. Peut être que ça va te permettre de comprendre un peut le principe.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !... |
|
|
|
00
|
|
|
#83 |
|
Membre expérimenté
![]() Aurélien GéritsDéveloppeur Web Inscription : mai 2006 Messages : 1 045 ![]() |
merci beaucoup, faut dire que s'y mettre c'est facile
Mais bien comprendre les rouages prend beaucoup de temps ![]() PS: c'est mon cas faut dire cela fais quelque temps que je me prend la tête sur mes class
__________________
Au petit déjeuner, je prend du PHP et au souper du jQuery.AFUP 2009 : Bien optimiser son code pour le référencement Mon projet open source de librairie PHP 5: magix cjquery |
|
00
|
|
|
#84 | |
|
Expert Confirmé
![]() ![]() Développeur informatique Inscription : février 2005 Messages : 3 031 ![]() |
Citation:
Un forum. Je dirais que les personnages nécéssaires pour faire un forume sont en gros: Une catégorie, un topic, un utilisateur. Il peut en avoir d'autres. Je devrais pas dire cela mais quand tu conçois tes tables SQL tu c'est la même approche. Chaque table représente en faite un objet. En gros mais c'est pas toujours vrai.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !... |
|
|
|
00
|
|
|
#85 |
|
Membre expérimenté
![]() Aurélien GéritsDéveloppeur Web Inscription : mai 2006 Messages : 1 045 ![]() |
oui oui j'ai bien compris le "personnage" de mon projet, j'essaie de créer un système complet pour un site utilisant des class bien distinct à des tâches précise.
exemple j'ai écris une class image permettant de travailler uniquement sur la génération d'une galerie comprenant ainsi d'autre class travaillant ensemble . Sans donnée de détail le travail avance bien mais comme dans la vie jamais sans embûche ![]() Une fois mon projet complètement fonctionnelle, je pourrai prendre des vacances et ré-utiliser celui-ci dans d'autre implémentation sans me prendre la tête .Pour conclure que la POO est super pratique ce qui me pouce à étudier, comprendre l'objet et s'en faire un allier de taille.
__________________
Au petit déjeuner, je prend du PHP et au souper du jQuery.AFUP 2009 : Bien optimiser son code pour le référencement Mon projet open source de librairie PHP 5: magix cjquery |
|
00
|
|
|
#86 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2006 Messages : 160 ![]() |
Bonjour,
Est-ce que vous avez des exemples de script comme livre d'or ... entierement programmer avec la POO ? Merci |
|
|
00
|
|
|
#87 |
|
Invité de passage
![]() Inscription : janvier 2006 Messages : 1 ![]() |
Je viens de lire un grand paquet de sujets de discussion sur le php objet et la poo, sur ce site et sur d'autres, j'ai lu les tutos sur la poo, les remarques sur php 5, ...
Je sens bien qu'il y a des choses a faire avec la poo, je sens bien que ca me faciliterait la vie mais franchement j'arrive pas a comprendre. En fait je n'arrive pas a voir l'avantage et je crois que c'est le probleme de la majorité des gens qui ne s'y sont pas encore mis. Alors tous les exemples que vous donnez, c'est tres bien, mais c'est tres abstrait, les explications sont éparses et toutes fouillies, je n'ai rien lu qui puisse m'aider a débuter en objet, principalement avec php dans mon cas. Alors oui je suis issu du procédural, meme pire, puisque j'ai commencé à programmer en GWBasic, on était meme pas encore au procédural, on avait des numéros de ligne... Et j'ai travaillé dans divers environnements, sgbd, sgbdr, pascal, foxpro, php. Mais mes programmes ont toujours été clairs, documentés, nommés d'une facon "identique" depuis des lustres, incluant le nom du fichier qui contient la fonction dans la fonction (par exemple je ne vois pas ou c'est plus clair de voir img::exist() que ImgExist() franchement c'est strictement la meme chose... Mais bon), mes fonctions classées et rangées dans des fichiers de procédures classés dans un dossier spécifique, nommés de manière explicite... Et tous les cours que j'ai trouvé se ressemblent tous. Les auteurs partent du principe que l'on a leur connaissance, et ils vous décrivent les objets, les classes, les héritages, serialize() unserialize() et hop! Ben moi je lis, je comprends les mots qui sont devant mes yeux, mais franchement personne n'a réussi a me donner envie de chercher plus loin dans ce que j'ai lu... Ce qui ne m'a pas empeché de chercher plus loin, mais franchement je n'arrive pas. Et c'est quand meme le paradoxe, je voudrais apprendre ce truc, parce que je suis sur que ca peut m'etre très utile (et je parle pas ici de poo a outrance) mais j'ai beau lire et relire les cours que j'ai imprimé, je comprends pas l'interet! J'y arrive pas! Auriez vous des url quelque part avec des explications de la poo (spécialement au travers de php 5) ? Des sites ou il y a des explications claires, des exemples plus concrets que j'ai une porche: voiture et elle peut faire des trucs : demarrer() et arreter()? Parce que les exemples choisis sont souvent cucu, ce qui n'aide pas à la compréhension... Ou effectivement des petits exemples, clairs et documentés pour se rendre mieux compte? |
|
|
00
|
|
|
#88 | |
![]() ![]() Inscription : juin 2003 Messages : 4 892 ![]() |
l'intérêt principale de la POO est de fournir des "cadres" qui permettent de structurer son code de façon à optimiser la maintenance du code
Citation:
je pense que à ton niveau la POO peut surtout t'apporter une aide pour comprendre le code d'une autre personne parce que ce que tu classais dans un répertoire était peut-être appelé "module" ou "bibliothèque" par quelqu'un d'autre. Hors en POO, une classe est une classe pour tout le monde et donc ça aide à travailler et à construire à plusieurs.
__________________
Modérateur PHP |
|
|
|
00
|
|
|
#89 |
|
Invité de passage
![]() Étudiant Inscription : août 2007 Messages : 5 ![]() |
Bonsoir ;
voila déjà 2/3 mois que je m'essaye au php orienté objet et j'ai lu un tas de truc, que ce soit extrait de : "tutos", d'ebooks, de billets, de cours etc sur la notion de programmation orienté objet. Cependant, ce qui me manque, c'est plus une référence un modèle : les notions de base d'objet sont une chose, c'est pas vraiment dur à comprendre. Mais la mise en application c'est vraiment pas la même. Pour mes premières tentatives j'utilisais bien la notion de classe et d'encapsulation. Au final ca ressemblait plus à une bibliothéque de fonction que j'utilisais au petit bonheur la chance à l'aide de mon constructeur. Bref c'était de l'objet pour moi, j'avais ma classe, je l'instanciais, elle faisait son travail et me renvoyait ma page. Or dans la logique, c'était encore du procédural... Puis vient le moment ou j'utilisais l'heritage, les classes et methodes abstraites etc... Même si pour le moment j'utilise des notions qui semblent fondamentaes pour la programmation orienté objet, j'ai toujours cette impression de "grosse biblio" utilisé au petit bonheur la chance. Tout ca pour dire : Quelqu'un aurait t il un projet personnel / opensource, achevé / inachevé, en php / asp ou tout langage destiné à rendre dynamique une page web, afin de montrer cette notion qui est l'orienté objet. Cordialement ; Martin. |
|
|
00
|
|
|
#90 |
|
Membre régulier
![]() Intégrateur Web Inscription : avril 2005 Messages : 31 ![]() |
Salut,
Pour ma part, j'ai vraiment bien compris l'intérêt de la POO le jour où j'ai dû bosser sur un projet d'envergure, avec un système relativement complexe qu'il a fallu modéliser. On s'est bien cassés la tête lors de la modélisation (nous avons utilisé UML), mais le passage ensuite de la modélisation (théorie) à la programmation (réel) a été très facile. Ensuite, ça a grandement facilité l'évolution du produit et sa maintenance. Avec du procédural, ça aurait été d'une autre complexité (et je parle en connaissance de cause, ayant bossé sur des gros projets en procédural et même en mode "bâtard POO/procédural" en PHP4). Quand tu travailles au sein d'une équipe de 10 à 15 développeurs ayant chacun la charge d'un ou plusieurs modules pendant plus d'un an, tu vois vite les avantages de la POO. Gilles |
|
|
00
|
|
|
#91 |
|
Expert Confirmé
![]() ![]() Développeur informatique Inscription : février 2005 Messages : 3 031 ![]() |
En effet, il a l'avantage de permettre à une équipe de travailler ensemble. En procédurale ça devient très difficile.
Seul défaut de la POO qui en est pas en réalité. C'est de tomber sur quelqu'un qui pense savoir coder avec des classe mais n'a aucune notion d'objet. Je suis tombé sur ce genre de gugus et ça fait peur quand vous voyez le code. En faite, les classes sont des sacs à fonctions. Le pire que j'ai vu c'est une classe dite "Mère" qui faisait tous et n'importe quoi. 3000 lignes bien compressé. Avec de tout dedans. Des requêtes dans tous les sens, du code HTML hors balise PHP mais que la classe englobe. Bref, je supporte pas ces charlôts. Désolé de ce vocabulaire mais ces personnes me foute un stress incroyable Je me rappelle que j'avais passé un entretient et le mec avait l'air intéressé par mes compétences Il a fait l'erreur de mon montrer le code source lors de l'entretient. J'ai dis que c'était pas possible, je pouvais pas travailler avec ce genre de chose. Que je risque de regresser et ça je ne sais pas faire. Qu'il fallait qu'il sorte un ouvrage chez Eyrolles s'il est sur de sont organisation du programme.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !... |
|
|
00
|
|
|
#92 |
|
Invité de passage
![]() Étudiant Inscription : septembre 2007 Messages : 1 ![]() |
Salut, je me joins à la discussion,
Faire une application en PHP objet demande plus de ressources, augmente le temps d'exécution... et j'ai souvent lu ce genre de reproche. Et, oui, effectivement, c'est entièrement vrai. Mais c'est aussi entièrement vrai que le projet sera beaucoup plus facile à maintenir s'il est orienté objet (s'il est bien fait aussi hahaha). Un framework implémentant bien le modèle MVC permet d'être beaucoup plus efficace et organisé. Bref, faire de l'objet en PHP à un coût, mais il en vaut largement la peine dès que le site est plus complexe qu'un simple systeme de news ou autre application basique. @berceker united : Effectivement ce genre de gar fait peur
|
|
|
00
|
|
|
#93 | |
|
Membre éclairé
![]() Inscription : octobre 2005 Messages : 431 ![]() |
Citation:
Cependant je vois souvent des chiffres comme ça, genre c'est dément, pour une classe, mais moi j'ai une classe qui fait bien 1500 lignes, et qui va vers pire, il s'agit de la classe de 'personnage' de mon jeu, et j'ai codé toutes ses actions dans la classe, donc function mangePomme(), function dors() etc... (bon j'image mais y'a l'idée). Je ne vois pas vraiment comment je peux casser cette classe, malgré sa grosseur...
__________________
Linio |
|
|
|
00
|
|
|
#94 | |
|
Expert Confirmé
![]() ![]() Développeur informatique Inscription : février 2005 Messages : 3 031 ![]() |
Citation:
Par contre, il y a toujours moyen de casser. Dans ton exempl : Pour les methodes que tu as données tu peux imaginer que c'est des actions pour un personnage. Donc avoir une classe Action qui sera utilisé par la classe Personnage. Alors peut être que ça ne sert pas mais au moin tu peux optmiser cette classe et faire en sorte qu'elle soit très optimisé. Tu peux évoluer test actions sur des objets mais ça reste toujours une action (classe hérité). Bon bref, je pense que tu as compris à quoi je voulais en venir. Pour la classe de 3000 lignes c'est sans commentaire quasiment aucune ligne vide. En gros il faut imaginer que chaque methode de cette classe etait une grappe de code procédurale.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !... |
|
|
|
00
|
|
|
#95 |
|
Membre éclairé
![]() Inscription : octobre 2005 Messages : 431 ![]() |
Oui non c'est largement commenté (1 ligne sur 4 en moyenne je dirais).
Heureusement, manquerait plus que ça.
__________________
Linio |
|
|
00
|
|
|
#96 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2006 Messages : 160 ![]() |
Bah sinon je peux faire enlever le destruct et faire une fonction close() à la place comme ça je déco quand je veux ...
J'ai une question comment je fais pour relier toute mes classes entre elle ? je fais un fichier class.php et je met dedans require("mysql.class.php") ... etc ? Merci |
|
|
00
|
|
|
#97 |
|
Expert Confirmé
![]() ![]() Développeur informatique Inscription : février 2005 Messages : 3 031 ![]() |
Non ! tu ne fait jamais d'include ou requiere dans un fichier classe.
Si t'es bien organisé tu devrais pas te poser cette question. C'est à celui qui appelle la classe qui devrait faire se travail. Pour pas te retrouver avec 50 lignes d'include utilise la fonction autoload()
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !... |
|
|
00
|
|
|
#98 | ||
|
Nouveau Membre du Club
![]() Inscription : décembre 2006 Messages : 160 ![]() |
Ok genre je fais ça dans mon fichier personne.php par exemple :
Code :
Par contre est-ce que POO + Template ça ralentit un peu le script ? Merci |
||
|
|
00
|
|
|
#99 | |||
|
Expert Confirmé
![]() ![]() Développeur informatique Inscription : février 2005 Messages : 3 031 ![]() |
Citation:
Juste pour être cohérant. J'en suis sur que t'es fichier classe sont déjà dans un répertoire "classe", je me trompe ? Alors pourquoi tu ajoutes *.class.php ? Surtout que maintenant avec l'autoload tu n'as plus à te préocupé du cela
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !... |
|||
|
|
00
|
|
|
#100 |
|
Nouveau Membre du Club
![]() Inscription : décembre 2006 Messages : 160 ![]() |
Oui ils sont dans un dossier "class".
Le problème je ne sais pas ou mettre cette fonction alors ... puisque aucun fichier serra tout le temps appelé sauf les classes ... |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com