[Agora-generale] Passage en version 5.0 de PHP
Stephane LAURENT
sl at adequates.com
Mar 26 Sep 14:14:59 CEST 2006
S. Poulain (compte yahoo) a écrit :
>
> L'objet de ma question n'est pas le déboguage de l'application qui est
> une évolution que l'on compte mener en parallèle
encore un fork du fork ?
Mais il y a combien de versions d'Agora dans la nature ?
<troll>
"Heureusement" que chacun programme dans son coin, sinon, ca serait un
vrai sapin de noel le CVS !
A quand le "defi du merge" ?
:o)
</troll>
Tristan Rivoallan a écrit :
>
> La programmation orientée objet est une affaire de concepts plus que
> de fonctionnalités. Agora n'exploite quasiment aucun de ces concepts.
<troll>
Ben oui, ca fait des mois qu'on se tue à le dire : fork inutilement mal
fait !
Et ce n'est pas une critique de CA qui, j'ai bien compris, a fait ce
qu'on lui a demandé.
</troll>
Le premier "concept" souhaité etait la surcharge.
On a vu la limite de l'approche objet sur Agora : la gestion des droits
est certes surchargeable, mais à quel prix ?
Combien de jours/homme pour mettre en place un circuit de validation
parallele ?
Est-ce vraiment plus "maintenable" d'avoir des classes de 2000 lignes à
coder ?
Idem pour les "bienfaits" du coté support multibase : il n'y a qu'à voir
le nombre de bases supportées aujourd'hui pour comprendre qu'il y a un
pas entre concept et réalité...
Un systeme de surcharge "propre" (cad n'obligeant pas à "forker" une
librairie complete) est maintenant disponible dans Spip 1.9, qui est
compatible PHP5, partout(?) ou c'est necessaire, sans pour autant
imposer de la programmation objet(mais sans l'interdire) : ca s'appelle
un pipeline et ca n'est pas de l'objet, pourtant ca repond au besoin.
C'est exactement pour les memes mauvaises raisons qu'Agora a "mal forké"
Spip : prendre un projet en partant de la technique, c'est marcher sur
la tete !
Un cahier des charges "fonctionnel" qui impose des solutions techniques
est un mauvais cahier des charges qui menent à un mauvais produit.
Il faut d'abord se demander quel est le besoin fonctionnel (meme au
niveau des developpeurs) avant de se poser la question de la reponse
technique à apporter...
Dire "je veux de l'objet", c'est comme dire "je veux du web 2.0"... ca
ne veut rien dire !
Inclure ahah.js ou del.icio.us dans une page web, ca fait ... des
fichiers de plus à charger pour l'utilisateur, c'est tout.
Pour rester sur cette illustration, dire "je veux pouvoir changer ca
sans recharger la page" me semble plus constructif et la bonne reponse
technique ne sera pas forcement la derniere version de del.icio.us.
La petite "iframe action" a par exemple très bien joué son role pour la
gestion des statuts et reste sans doute compatible avec plus de
navigateurs que l'utilisation de HTTPRequest.
Maintenant que Spip utilise massivement "AJAX" (enfin, plutot AJAH), le
choix s'est porté sur JQuery/Ahah : ne contenant que les fonctionnalités
réellement exploitées.
Alors à part la legitime compatibilité PHP5, vous voulez quoi ?
de l'optimisation de la memoire ? des traitements ?
la maintenabilité ?
Il faut poser les questions avant d'apporter les reponses !
<troll>
Si vous voulez un CMS programmé en objet qui exploite vraiment ce
concept, developpez le en java ou C# !
Au moins vous pourrez faire du polymorphisme et gerer des comportements
differents selon les instances sans avoir à tout dupliquer.
</troll>
J'avais espéré que, à defaut de reconnaitre les erreurs du passé, les
reflexions étaient maintenant portées sur l'avenir, mais visiblement,
rien n'a changé.
Comme tout cela est triste et inutilement couteux pour le contribuable...
Cordialement.
Stephane.
Plus d'informations sur la liste de diffusion Agora-generale