Post by Pascal PONCETPar ailleurs, dans les développements Web, j'utilise très rarement PHP
sans base de données. Dans ce cas, il est intéressant de créer des classes
d'objets "métier" correspondant aux tables de la base.
Dans ce type de classes, je trouve simple et efficace de concevoir chaque
champ de la table comme un attribut de l'objet. Ca peut faire pas mal de
propriétés qu'il serait lourd de gérer avec des accesseurs, non ?
Ca m'intéresserait de savoir comment d'autres gèrent cela.
Et bien comment te dire, tout dépend du projet. Le truc sur lequel je suis
actuellement est tellement obscur, tellement victime de son passé et de son
ancienneté que décision a été prise de sortir la cavalerie et la machine a
bazooka. Dès que je le peux, je crée un objet correspondant à ma table, et
je fais mes propriétés correspondant aux champs de la table. J'ai mes
accesseurs, mes methode load update delete et d'autres trucs plus
contextuels. Cela me permet petit a petit d'enlever mon sql de mes pages
html, et d'éviter les répétition de requêtes sql qui bizarrement ne sont pas
tout le temps faites de la meme manière pour le meme résultat (problème des
projets à histoire lourde ayant eu plusieurs intervenants au fur et à mesure
du temps, ceux ci n'ayant pas toujours pu se parler.)
Alors oui, c'est lourd, mais au fur et à mesure, ça nettoie et ça simplifie.
Et je sais que pour écrire un Article, par exemple, la requête est à un seul
endroit. Bien sur, je pourrais aller encore plus loin et faire un mapping
relationnel /objet, mais là j'ai pas le temps, ni meme de faire une couche
DataService supplémentaire. Parceque non seulement faut nettoyer, mais faut
avancer et évidemment il fallait rendre le tout pour hier.
Pour ce qui est des accesseurs, il y a des IDE ou tu sélectionnes tes
propriétés et tu génères tes acceseurs. Après, tu peux repasser dessus si
nécessaire, mais le gros du travail est fait. Et je ne suis pas sur que cela
prenne beaucoup plus de temps système par la suite de les utiliser. Par
contre, le jour où tu dois vérifier quelque chose dedans, tu es bien content
de les avoir...
Post by Pascal PONCETPS: il faut dire que je code encore en PHP4, alors je ne suis pas très
concerné par la distinction public/private.
Et bien je pense que vu la tournure des évènements, les gros projets vont
aller dans cette direction. A la fois pour segmenter les développement, et
ensuite parceque on se traîne vraiment une réputation de boulets et
d'amateur en tant que dev PHP. La prog Objet et le MVC par exemple sont
devenus des critères de sélection et de recrutement ne serais ce que pour
faire le tri et pour pallier cette image désastreuse.
Pour ma part, j'aimerais meme que PHP devienne un jour une plate-forme qui
fasse serveur d'application. Je m'explique :
Il peut parfois être nécessaire et bienvenue de mettre toutes tes chaînes de
caractère dans un fichier texte, XML, voir dans une classe avec des
statiques. Les pages font ensuite appel à ces constantes, mais les écritures
réelles sont en dehors du code et du html. Jusque là, rien de vraiment très
révolutionnaire, ça existe depuis un certain temps maintenant. Or,
aujourd'hui, cette solution signifie que à chaque demandes de pages, tout
cela se retrouve en mémoire le temps de l'appel, avec un ou plusieurs accès
disque. A chaque fois, pour chaque visiteur, chaque appel de lien. Or, un
serveur d'application charge ces élément en mémoire une seule fois. Ils sont
donc tout le temps accessible, et le fichier est lu une seule fois. Et là,
dans ce genre d'architecture, ça commence à compter.
@ ++
Stef