Structure d'un projet en PHP5

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Structure d'un projet en PHP5

par iclo » 25 oct. 2007, 12:11

J'aurais tendance à dire que le mieux c'est encore d'avoir sur un langage où tout (ou presque) est objet.
et d'ensuite passer au mix objet/procédural.

par Ryle » 25 oct. 2007, 11:40

Modération :
simane, si tu as une autre question ouvre un nouveau sujet,
cela te permettra d'avoir plus de réponses.

En plus, tu pourras mettre [Résolu] si ton problème évoqué ici est réglé.

Par ailleurs la remarque de Zeus concernant le multipostage
est vallable également au sein d'un même topic....

Je t'ai créé un nouveau sujet pour ta question :
:arrow: Récupérer les valeurs des champs de saisie

Merci de prendre le temps de lire les règlements.

par Calimero » 20 oct. 2007, 17:45

Personnellement, ce site http://www.phppatterns.com/docs/start (attention, anglophobes et daltoniens s'abstenir) m'a beaucoup aidé à "penser" objet et à cerner les avantages de la POO en php.

par Tracker » 20 oct. 2007, 17:41

C'est bien ce que j'ai remarqué, et c'est pour cette raison que je cherche des tutos sur "penser objet".

J'ai été voir sur d'autres forums et chaque fois que cette question est abordée, elle reste toujours sans réponse. J'en viens à penser que ce n'est pas la bonne question, ou un secret jalousement gardé par les membres d'une secte obscure :lol:
Je suis d'accord avec toi, le développement objet est avant tout une façon d'analyser les choses, et pas une syntaxe. Tu trouveras des kilos de documentations/tutos sur comment coder une classe, un héritage, une aggrégation dans tous les langages qui le gèrent mais pas grand chose sur la réflexion qu'il a fallu mettre en oeuvre pour arriver à ce besoin.
Quelle question faut-il (se) poser pour avoir une réponse ou avancer sur le sujet :?:
L'analyse objet, passe par de dénombrement des "intervenants" du système ainsi que la définition précise de leurs responsabilités, permettant au final de répondre aux besoins. Les intervenant sont variés, ils peuvent prendre la forme de services (matérialisés par des classes statiques ou des singletons), d'instances (de classes), etc...

Je ne suis pas certain que te focaliser sur des documentations php d'aide à faire progresser ta comprehénsion. Regarde plutot côté UML si tu n'arrives pas à trouver des tutos t'expliquant l'analyse d'un système de A à Z.

Pour terminer, peut-être que d'autres ont une expérience différente, mais le passage du procédural à l'objet m'a pris quasiment un an, c'est un véritable reformatage, mais nécessaire parce qu'à l'époque je bossais sur un gros projet développé en C++. Je ne regrète rien car à présent je m'éclate en Java/J2ee, .NET/C# et moins professionnellement en PHP5.

Alors au boulot :wink:


Tracker.

par Berzemus » 19 oct. 2007, 15:52

...Depuis, j'ai bien lu le chapitre sur les objets...
Lequel ou lesquels, un liens ou des liens SVP :wink:
Chapitre 12, "Gestion des objets", page 247, PHP5 avancé, eyrolles, 1ère édition (collector :wink: )

par AB » 19 oct. 2007, 14:59

...Depuis, j'ai bien lu le chapitre sur les objets...
Lequel ou lesquels, un liens ou des liens SVP :wink:

par simane » 19 oct. 2007, 14:57

Salut,

Mon problème est: lorsque je crée tous mes fichiers comme étant des classes, je ne parviens pas à récupérer les valeurs des champs de saisi si je passe sur une autre page. Les valeurs de ces champs sont vides puisque je fais un "new" de la classe qui correspond à la page d'où je viens

Quelqu’un a une idée?

Cordialement.

par Berzemus » 19 oct. 2007, 13:58

y aller je dirais.. avant il y a deux mois, c'était aussi obscur pour moi. Depuis, j'ai bien lu le chaptire sur les objets, je me suis lancé, et hop, ça vient tout seul.

Maintent même en JS je ne m'en passe plus (même si je ne pense pas encore entièrement en objet...)

par AB » 19 oct. 2007, 13:21

Passer du développement procédural à l'objet est plutot ardu, parce qu'il y a un monde entre comprendre des architectures de classes et "penser objet"...
Tracker.
C'est bien ce que j'ai remarqué, et c'est pour cette raison que je cherche des tutos sur "penser objet".

J'ai été voir sur d'autres forums et chaque fois que cette question est abordée, elle reste toujours sans réponse. J'en viens à penser que ce n'est pas la bonne question, ou un secret jalousement gardé par les membres d'une secte obscure :lol:

Quelle question faut-il (se) poser pour avoir une réponse ou avancer sur le sujet :?:

par Berzemus » 19 oct. 2007, 11:46

Et donc php5 est un bon pas, puisqu'il permet de passer de l'un à l'autre sans trop perdre au passage

Mais pour le tout objet, j'y suis pas encore, surtout depuis que j'ai vu les DB objet..

par Tracker » 19 oct. 2007, 06:29

Sans vouloir jeter un pavé dans la mare, si on veut un site performant, on laisse tomber la POO et le PHP et on fait du CGI en assembleur…
Je veux dire que les performances n'ont que peu de place dans un débat d'architecture, voire même dans l'idée d'orienté objet (les méthodes sont des bouts de code qui pourraient être optimisées si elles étaient intégrées dans le reste du code). Si on veut du 100% performant en PHP, on est obligé de passer au procédural et supprimer toute notion de fonction pour optimiser à la main tout le code en un bloc. Il y aura donc toujours moyen de faire plus performant. Et quand on parle de POO, c'est que l'on a déjà dans l'idée de sacrifier une part de performance au profit de la maintenabilité, de la clarté, de la modularité, …
Donc je ne pense pas qu'il soit de mise de mettre les performances au premier plan dans ce sujet. Quand on fait de l'architecture, ce n'est pas pour les performances…
D'accord, d'autant qu'il exite en php des tas d' "opcode cacher" tous plus efficaces. Performance n'a jamais rimé avec "interpréteur de code" que le contexte soit object ou non. C'est juste un faux débat.
Passer du développement procédural à l'objet est plutot ardu, parce qu'il y a un monde entre comprendre des architectures de classes et "penser objet", c'est d'ailleurs en partie pour cette raison que l'opposition (procédural/objet) perdure. Alors bon courage à tous ceux qui se lancent.


Tracker.

par Sékiltoyai » 19 oct. 2007, 01:53

Sans vouloir jeter un pavé dans la mare, si on veut un site performant, on laisse tomber la POO et le PHP et on fait du CGI en assembleur…
Je veux dire que les performances n'ont que peu de place dans un débat d'architecture, voire même dans l'idée d'orienté objet (les méthodes sont des bouts de code qui pourraient être optimisées si elles étaient intégrées dans le reste du code). Si on veut du 100% performant en PHP, on est obligé de passer au procédural et supprimer toute notion de fonction pour optimiser à la main tout le code en un bloc. Il y aura donc toujours moyen de faire plus performant. Et quand on parle de POO, c'est que l'on a déjà dans l'idée de sacrifier une part de performance au profit de la maintenabilité, de la clarté, de la modularité, …
Donc je ne pense pas qu'il soit de mise de mettre les performances au premier plan dans ce sujet. Quand on fait de l'architecture, ce n'est pas pour les performances…

par AB » 18 oct. 2007, 22:35

Concernant l'aspect "performance", j'aimerais préciser que la différence en terme de performances entre func() et $this->func(), ou $var et $this->var est vraiment anecdotique, donc ne vous focalisez pas là-dessus, ça n'en vaut pas la peine.
Je pensais pas à ça. Mais plutôt le fait de passer systématiquement par une fonction...
La performance pure n'est pas le seul axe à prendre en compte.

Pour l'évolutivité d'un projet, l'OO est beaucoup plus pratique. ;)
Sans aucun doute pour les gros projets. C'est pour les petits que je m'interroge.

Cela dit je suis à la recherche également de tutos sur le développement en mode objet. Venant du procédural, je me dis que l'OO demande une philosophie différente pour être optimisé.

Ce qui nous ramène à la question de Simane. Vous connaissez des liens pour des conseils d'ordre général agrémentés d'exemples ? Les tutos que j'ai trouvés, bien qu'instructifs, me laissent sur ma faim. J'utilise bien des classes ici et là, mais je n'ai pas encore la philosophie nécessaire pour les apprécier (et les développer) systématiquement.

Peut-être des éléments de réponse dans la prochaine édition de php5 avancé ?

par Hubert Roksor » 18 oct. 2007, 21:24

Concernant l'aspect "performance", j'aimerais préciser que la différence en terme de performances entre func() et $this->func(), ou $var et $this->var est vraiment anecdotique, donc ne vous focalisez pas là-dessus, ça n'en vaut pas la peine.

par zeus » 18 oct. 2007, 21:18

La performance pure n'est pas le seul axe à prendre en compte.

Pour l'évolutivité d'un projet, l'OO est beaucoup plus pratique. ;)