Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[Mise a dispo]: Classe QCM. Vos avis...

6 réponses
Avatar
pierre.IHATESPAM.fauque
Bonjour à tous,

Venant de terminer une classe PHP gérant des questionnaires en ligne (tests et
sondages avec QCMRU, QCMRM, Tris, Appariements) avec ou sans
graphiques/enregistrements, je souhaiterais avoir l'avis de développeurs PHP
sur les améliorations à apporter et bugs rencontrés.

utilisation, a mon avis simple:

instanciation: $test = new qcm(18);
affichage: $test->display();
dépouillement: $test->correction();

Elle est livrée en libre (AFPL), et est disponible avec sa doc en
http://www.fr-webdev.net/ rubrique: "scripts/la classe qcm".

Merci de vos avis

Pierre.

6 réponses

Avatar
Marc

Venant de terminer une classe PHP gérant des questionnaires en ligne (tests et
sondages avec QCMRU, QCMRM, Tris, Appariements) avec ou sans
graphiques/enregistrements, je souhaiterais avoir l'avis de développeurs PHP
sur les améliorations à apporter et bugs rencontrés.

Merci de vos avis


je me permets de répondre, puisque j'ai aussi pris le temps
d'aller voir cette classe.

* tres bonne documentation, la section technical comments est
intéressante.

* seulement c'est une classe monolitique comportant 57 methodes,
128 attributs sur 2000 lignes. C'est une classe qui fait un peu
tout a la fois : sql, graphismes, lecture de fichier, mail,
sms, formatage HTML.

Il y aurait peut-etre matiere a eclater tout cela ?

Avatar
pierre.IHATESPAM.fauque
In article <42255d22$0$31656$, Marc <mquinton| wrote:

Venant de terminer une classe PHP gérant des questionnaires en ligne (tests
et

sondages avec QCMRU, QCMRM, Tris, Appariements) avec ou sans
graphiques/enregistrements, je souhaiterais avoir l'avis de développeurs PHP
sur les améliorations à apporter et bugs rencontrés.

Merci de vos avis


je me permets de répondre, puisque j'ai aussi pris le temps
d'aller voir cette classe.

* tres bonne documentation, la section technical comments est
intéressante.

* seulement c'est une classe monolitique comportant 57 methodes,
128 attributs sur 2000 lignes. C'est une classe qui fait un peu
tout a la fois : sql, graphismes, lecture de fichier, mail,
sms, formatage HTML.

Il y aurait peut-etre matiere a eclater tout cela ?


Tout d'abord, merci pour cette réponse.

Vous avez très probablement raison mais ce qui m'a poussé à tout mettre dans
un seul et même fichier c'est que j'ai souvent constaté, lors des
distributions, qu'un fichier parmi d'autres manquait et que ça foutait tout
par terre.

Là, normalement, il n'y en a qu'un et en plus une doc minimaliste (qui peut
être supprimée après impression) est incluse.
C'est un choix. Il y a probablement mieux à faire et c'est pour cette raison
que je demande vos avis... :o)

Merci.


Avatar
__marc.quinton__
Pierre FAUQUE wrote:

Là, normalement, il n'y en a qu'un et en plus une doc minimaliste (qui peut
être supprimée après impression) est incluse.
C'est un choix. Il y a probablement mieux à faire et c'est pour cette raison
que je demande vos avis... :o)


oui, c'est tout a fait exact. Dans ce cas, on peut parler plutot d'application
que de classe.

et en tout état de cause, il est possible de mettre dans le meme fichier, les
classes les unes a la suite des autres, et le main qui provoque l'instantiation
et l'appel de la premiere methode.

Avatar
bruno modulix
Pierre FAUQUE wrote:
In article <42255d22$0$31656$, Marc <mquinton| wrote:


Venant de terminer une classe PHP gérant des questionnaires en
ligne (snip) je souhaiterais avoir l'avis de développeurs PHP sur
les améliorations à apporter et bugs rencontrés. >>


(snip)


* seulement c'est une classe monolitique comportant 57 methodes,
128 attributs sur 2000 lignes. C'est une classe qui fait un peu
tout a la fois : sql, graphismes, lecture de fichier, mail,
sms, formatage HTML.

Il y aurait peut-etre matiere a eclater tout cela ?


(snip)


Vous avez très probablement raison mais ce qui m'a poussé à tout mettre dans
un seul et même fichier c'est que j'ai souvent constaté, lors des
distributions, qu'un fichier parmi d'autres manquait et que ça foutait tout
par terre.


Si un fichier manque, c'est soit que le packaging est mal fait, soit que
la personne installant le package a mal fait sont travail. Ca ne devrait
pas (amha) influencer à ce point l'architecture de l'ensemble.

Par ailleur, rien n'interdit d'avoir plusieurs classes dans un même
fichier !-)

Je n'ai pas le temps d'aller regarder le code de plus près pour le
moment, mais vu ce qu'en rapporte Marc, j'aurais tendance à partager son
avis. Une classe devrait avoir des responsabilités très limitées. C'est
la collaboration entre plusieurs objets qui fait l'application, et dans
la mesure du possible, chaque objet devrait pouvoir être remplacé par un
autre présentant la même interface. Sans quoi je ne vois pas l'intérêt
d'une approche objet (quoique, PHP ne connaissant que l'espace de
nommage global, l'utilisation de classe pour émuler ce qui dans d'autres
langages serait un module est une solution envisageable).

Mes deux centimes...
--
bruno desthuilliers
ruby -e "print ''.split('@').collect{|p|
p.split('.').collect{|w| w.reverse}.join('.')}.join('@')"



Avatar
pierre.IHATESPAM.fauque
In article <42255d22$0$31656$, Marc <mquinton| wrote:
Venant de terminer une classe PHP gérant des questionnaires en ligne (tests
[...]
Merci de vos avis


je me permets de répondre, puisque j'ai aussi pris le temps
d'aller voir cette classe.

* tres bonne documentation, la section technical comments est
intéressante.
[...].
Il y aurait peut-etre matiere a eclater tout cela ?


Cette remarque à propos de la documentation, fait référence aux commentaires
inclus dans le script ou à la doc PDF qui l'accompagne ?


Avatar
Marc

Cette remarque à propos de la documentation, fait référence aux commentaires
inclus dans le script ou à la doc PDF qui l'accompagne ?


ce sont les commentaires dans le code, et ceux à la fin du code.