Pour finir... la documentation...
et la c'est le plus chelou... car souvent il faut respecter une
syntaxe imposée par l'outil de production de documentation.
Dans mon cas, j'en ai pas trouvé un qui me convienne...
Mais bon il en existe quand meme des tas...
un seul regret quant a ces outils... il n'y a pas de système d'alerte
indiquant l'absence de documentation...
Exemple:
Pour me forcer a mettre des commentaires, mes pages PHP s'analysent
(s'analysaient) elle meme avant d'etre parsées par le PHP, du coup,
si je n'ai pas mis assez de commentaires, ca me declanche une
erreur...
Pour finir... la documentation...
et la c'est le plus chelou... car souvent il faut respecter une
syntaxe imposée par l'outil de production de documentation.
Dans mon cas, j'en ai pas trouvé un qui me convienne...
Mais bon il en existe quand meme des tas...
un seul regret quant a ces outils... il n'y a pas de système d'alerte
indiquant l'absence de documentation...
Exemple:
Pour me forcer a mettre des commentaires, mes pages PHP s'analysent
(s'analysaient) elle meme avant d'etre parsées par le PHP, du coup,
si je n'ai pas mis assez de commentaires, ca me declanche une
erreur...
Pour finir... la documentation...
et la c'est le plus chelou... car souvent il faut respecter une
syntaxe imposée par l'outil de production de documentation.
Dans mon cas, j'en ai pas trouvé un qui me convienne...
Mais bon il en existe quand meme des tas...
un seul regret quant a ces outils... il n'y a pas de système d'alerte
indiquant l'absence de documentation...
Exemple:
Pour me forcer a mettre des commentaires, mes pages PHP s'analysent
(s'analysaient) elle meme avant d'etre parsées par le PHP, du coup,
si je n'ai pas mis assez de commentaires, ca me declanche une
erreur...
L'idéal serait d'adopter un framework objet ou pas, ou d'en
developper un a ta convenance avec les quelques 10 ou 20 objets
indispensables. Le reste ce sera des objets metiers.
L'idéal serait d'adopter un framework objet ou pas, ou d'en
developper un a ta convenance avec les quelques 10 ou 20 objets
indispensables. Le reste ce sera des objets metiers.
L'idéal serait d'adopter un framework objet ou pas, ou d'en
developper un a ta convenance avec les quelques 10 ou 20 objets
indispensables. Le reste ce sera des objets metiers.
Pourquoi faire ? PHP *est* un système de template. Enfin, à l'origine,
c'en était un, et ça continue à être utilisable comme ça. C'est con,
j'avais l'url d'un article assez intéressant de ce point de vue, mais
pas moyen de remettre la main dessus...
Il y a des choses intéressantes dans PEAR, mais d'une manière générale
je ne suis pas trop fan... Il y a aussi pas mal d'autres frameworks
MVC, et de toutes façons, ce n'est pas bien compliqué d'en mettre un
en place.
La meilleure doc reste le code lui-même, ce qui implique qu'il soit
bien rédigé (nommage etc). Les commentaires ne doivent servir qu'à
donner une vue d'ensemble (d'un point de vue fonctionnel), préciser
ce qui n'est pas forcément évident (choix d'implémentation, algos un
peu complexes, hypothèses de départ, cas non traités etc). Un
commentaire erroné est la pire chose qui soit, et on a vite fait de
ne pas mettre à jour les commentaires, donc...
Pourquoi faire ? PHP *est* un système de template. Enfin, à l'origine,
c'en était un, et ça continue à être utilisable comme ça. C'est con,
j'avais l'url d'un article assez intéressant de ce point de vue, mais
pas moyen de remettre la main dessus...
Il y a des choses intéressantes dans PEAR, mais d'une manière générale
je ne suis pas trop fan... Il y a aussi pas mal d'autres frameworks
MVC, et de toutes façons, ce n'est pas bien compliqué d'en mettre un
en place.
La meilleure doc reste le code lui-même, ce qui implique qu'il soit
bien rédigé (nommage etc). Les commentaires ne doivent servir qu'à
donner une vue d'ensemble (d'un point de vue fonctionnel), préciser
ce qui n'est pas forcément évident (choix d'implémentation, algos un
peu complexes, hypothèses de départ, cas non traités etc). Un
commentaire erroné est la pire chose qui soit, et on a vite fait de
ne pas mettre à jour les commentaires, donc...
Pourquoi faire ? PHP *est* un système de template. Enfin, à l'origine,
c'en était un, et ça continue à être utilisable comme ça. C'est con,
j'avais l'url d'un article assez intéressant de ce point de vue, mais
pas moyen de remettre la main dessus...
Il y a des choses intéressantes dans PEAR, mais d'une manière générale
je ne suis pas trop fan... Il y a aussi pas mal d'autres frameworks
MVC, et de toutes façons, ce n'est pas bien compliqué d'en mettre un
en place.
La meilleure doc reste le code lui-même, ce qui implique qu'il soit
bien rédigé (nommage etc). Les commentaires ne doivent servir qu'à
donner une vue d'ensemble (d'un point de vue fonctionnel), préciser
ce qui n'est pas forcément évident (choix d'implémentation, algos un
peu complexes, hypothèses de départ, cas non traités etc). Un
commentaire erroné est la pire chose qui soit, et on a vite fait de
ne pas mettre à jour les commentaires, donc...
Je vais m'intéresser aux différentes pistes que vous proposez.
J'utilise déjà certaines "méthodes" proposées. En particulier, la
séparation du code de la présentation grace à un système de template
de base(pas encore plongé dans smarty).
En ce qui concerne les frameworks, il est vrai que c'est assez peu
parlant pour moi. Disons que j'essai de réutiliser du code mais je
fais peu appel à des bibliothèque déjà développées par manque de
connaissance de celle-ci. Peut-être devrais-je m'intéresser à PEAR.
Quand à la documentation du code, il est vrai qu'il va falloir que je
fasse des efforts là-dessus...
Je vais m'intéresser aux différentes pistes que vous proposez.
J'utilise déjà certaines "méthodes" proposées. En particulier, la
séparation du code de la présentation grace à un système de template
de base(pas encore plongé dans smarty).
En ce qui concerne les frameworks, il est vrai que c'est assez peu
parlant pour moi. Disons que j'essai de réutiliser du code mais je
fais peu appel à des bibliothèque déjà développées par manque de
connaissance de celle-ci. Peut-être devrais-je m'intéresser à PEAR.
Quand à la documentation du code, il est vrai qu'il va falloir que je
fasse des efforts là-dessus...
Je vais m'intéresser aux différentes pistes que vous proposez.
J'utilise déjà certaines "méthodes" proposées. En particulier, la
séparation du code de la présentation grace à un système de template
de base(pas encore plongé dans smarty).
En ce qui concerne les frameworks, il est vrai que c'est assez peu
parlant pour moi. Disons que j'essai de réutiliser du code mais je
fais peu appel à des bibliothèque déjà développées par manque de
connaissance de celle-ci. Peut-être devrais-je m'intéresser à PEAR.
Quand à la documentation du code, il est vrai qu'il va falloir que je
fasse des efforts là-dessus...
bruno modulix a écrit/wrote :Pour ce qui est de l'implémentation, je commence en général par mettre
*rapidement* en place le *squelette* général, avec des implémentations
bidons des parties 'basses', puis je passe aux choses sérieuses - ce
qui entraine généralement des modifications de l'architecture
générale, parce que je suis trop bête pour penser à tout dès le début
!-). Dans cette phase, je commence de préférence par les parties les
plus risquées (technos mal connues, fonctionnalités critiques) car
c'est là qu'une erreur d'analyse ou de conception aura le plus
d'impact.
On peut aussi se servir d'une simple maquette de l'application réalisée à
partir de l'analyse et de la conception. Une bonne architecture
(Fusebox/MVC) et des bibliothèques (PEAR) et le tour est joué. Ça évite de
passer par toute cette phase risquée dont tu parles...
Mais en passant par
là on apprend souvent beaucoup, seulement certains y restent !
Ca dépend du projet et des technos, mais dans le cadre de ta question,
en général, oui. Par contre, mes diagrammes UML sont généralement
juste des griboullis sur papier brouillon. Ils sont là pour me
permettre d'organiser mes idées, pas pour imposer une architecture
figée.
Pour éviter les gribouillis de coin de table j'utilisais Visio de Microsoft.
Une autre solution consiste à écrire ses diagrammes UML plutôt qu'à les
modéliser. D'autres outils intéressants : DBDesigner 4 (modélisation BDD),
Poseidon for UML et Visual Paradigm for UML. Ces deux derniers sont très
intéressants car ils proposent plusieurs licences, gratuits pour les
particuliers et d'autres licences pour les pro. De quoi se faire la main
avant de sortir le grand jeu :). En libres il y a ArgoUML et dia.
En ce concerne la POO, attention à la tendance à vouloir faire du Java
en PHP, c'est généralement (!) une erreur.
Beaucoups de choses qui nécessiteraient des classes spécifiques en
Java se codent très bien en
PHP/Python/Ruby/Perl/TonLangageDeScriptPréféré avec des listes ou des
hash. Bref, ce n'est pas parce que tu représente quelque chose en
tant que classe ou objet dans tes diagrammes UML que tu doit
nécessairement en faire une classe pendant l'implémentation.
Un sujet de débat, après ça dépend des personnes. Pour ma part la techno
idéale est celle qui se rapproche le plus de la méthode de conception de
l'application, le processus de développement en somme. Donc plus le langage
est objet et mieux c'est. Après tout à quoi bon concevoir son application en
UML si c'est pour se retrouver avec des fonctions et des tableaux ?
J'ai
rencontré le problème en passant de C à C++, j'ai vite compris les limites
du C. Il en va de même depuis PHP3... Avec PHP5 on est encore loin de Java
mais on y arrivera, forcément un jour.
D'un manière générale, cette méthode (un peu de réflexion avant,
beaucoup d'aménagements pendant) ne fonctionne correctement qu'avec un
bon gestionnaire de version et des tests unitaires aussi automatisés
que possible (ce qui n'est pas toujours évident dans le cas du
développement Web). L'idée est qu'il faut pouvoir réaménager le code
sans souci de casser quelque chose. Un bénéfice secondaire des tests
unitaires est qu'ils forcent généralement à bien modulariser le code
pour le rendre testable.
On pense aussi aux tests de non régression,
JUnit de Java
qui a été adapté à
PHP (voir package PEAR).Un autre outil intéressant est un 'bug-tracker', si possible lié au
contrôleur de version. Le duo Subversion/Trac est pas mal.
En Bug Tracker libre il y a Bugzilla, je ne connais Trac que de nom.
bruno modulix a écrit/wrote :
Pour ce qui est de l'implémentation, je commence en général par mettre
*rapidement* en place le *squelette* général, avec des implémentations
bidons des parties 'basses', puis je passe aux choses sérieuses - ce
qui entraine généralement des modifications de l'architecture
générale, parce que je suis trop bête pour penser à tout dès le début
!-). Dans cette phase, je commence de préférence par les parties les
plus risquées (technos mal connues, fonctionnalités critiques) car
c'est là qu'une erreur d'analyse ou de conception aura le plus
d'impact.
On peut aussi se servir d'une simple maquette de l'application réalisée à
partir de l'analyse et de la conception. Une bonne architecture
(Fusebox/MVC) et des bibliothèques (PEAR) et le tour est joué. Ça évite de
passer par toute cette phase risquée dont tu parles...
Mais en passant par
là on apprend souvent beaucoup, seulement certains y restent !
Ca dépend du projet et des technos, mais dans le cadre de ta question,
en général, oui. Par contre, mes diagrammes UML sont généralement
juste des griboullis sur papier brouillon. Ils sont là pour me
permettre d'organiser mes idées, pas pour imposer une architecture
figée.
Pour éviter les gribouillis de coin de table j'utilisais Visio de Microsoft.
Une autre solution consiste à écrire ses diagrammes UML plutôt qu'à les
modéliser. D'autres outils intéressants : DBDesigner 4 (modélisation BDD),
Poseidon for UML et Visual Paradigm for UML. Ces deux derniers sont très
intéressants car ils proposent plusieurs licences, gratuits pour les
particuliers et d'autres licences pour les pro. De quoi se faire la main
avant de sortir le grand jeu :). En libres il y a ArgoUML et dia.
En ce concerne la POO, attention à la tendance à vouloir faire du Java
en PHP, c'est généralement (!) une erreur.
Beaucoups de choses qui nécessiteraient des classes spécifiques en
Java se codent très bien en
PHP/Python/Ruby/Perl/TonLangageDeScriptPréféré avec des listes ou des
hash. Bref, ce n'est pas parce que tu représente quelque chose en
tant que classe ou objet dans tes diagrammes UML que tu doit
nécessairement en faire une classe pendant l'implémentation.
Un sujet de débat, après ça dépend des personnes. Pour ma part la techno
idéale est celle qui se rapproche le plus de la méthode de conception de
l'application, le processus de développement en somme. Donc plus le langage
est objet et mieux c'est. Après tout à quoi bon concevoir son application en
UML si c'est pour se retrouver avec des fonctions et des tableaux ?
J'ai
rencontré le problème en passant de C à C++, j'ai vite compris les limites
du C. Il en va de même depuis PHP3... Avec PHP5 on est encore loin de Java
mais on y arrivera, forcément un jour.
D'un manière générale, cette méthode (un peu de réflexion avant,
beaucoup d'aménagements pendant) ne fonctionne correctement qu'avec un
bon gestionnaire de version et des tests unitaires aussi automatisés
que possible (ce qui n'est pas toujours évident dans le cas du
développement Web). L'idée est qu'il faut pouvoir réaménager le code
sans souci de casser quelque chose. Un bénéfice secondaire des tests
unitaires est qu'ils forcent généralement à bien modulariser le code
pour le rendre testable.
On pense aussi aux tests de non régression,
JUnit de Java
qui a été adapté à
PHP (voir package PEAR).
Un autre outil intéressant est un 'bug-tracker', si possible lié au
contrôleur de version. Le duo Subversion/Trac est pas mal.
En Bug Tracker libre il y a Bugzilla, je ne connais Trac que de nom.
bruno modulix a écrit/wrote :Pour ce qui est de l'implémentation, je commence en général par mettre
*rapidement* en place le *squelette* général, avec des implémentations
bidons des parties 'basses', puis je passe aux choses sérieuses - ce
qui entraine généralement des modifications de l'architecture
générale, parce que je suis trop bête pour penser à tout dès le début
!-). Dans cette phase, je commence de préférence par les parties les
plus risquées (technos mal connues, fonctionnalités critiques) car
c'est là qu'une erreur d'analyse ou de conception aura le plus
d'impact.
On peut aussi se servir d'une simple maquette de l'application réalisée à
partir de l'analyse et de la conception. Une bonne architecture
(Fusebox/MVC) et des bibliothèques (PEAR) et le tour est joué. Ça évite de
passer par toute cette phase risquée dont tu parles...
Mais en passant par
là on apprend souvent beaucoup, seulement certains y restent !
Ca dépend du projet et des technos, mais dans le cadre de ta question,
en général, oui. Par contre, mes diagrammes UML sont généralement
juste des griboullis sur papier brouillon. Ils sont là pour me
permettre d'organiser mes idées, pas pour imposer une architecture
figée.
Pour éviter les gribouillis de coin de table j'utilisais Visio de Microsoft.
Une autre solution consiste à écrire ses diagrammes UML plutôt qu'à les
modéliser. D'autres outils intéressants : DBDesigner 4 (modélisation BDD),
Poseidon for UML et Visual Paradigm for UML. Ces deux derniers sont très
intéressants car ils proposent plusieurs licences, gratuits pour les
particuliers et d'autres licences pour les pro. De quoi se faire la main
avant de sortir le grand jeu :). En libres il y a ArgoUML et dia.
En ce concerne la POO, attention à la tendance à vouloir faire du Java
en PHP, c'est généralement (!) une erreur.
Beaucoups de choses qui nécessiteraient des classes spécifiques en
Java se codent très bien en
PHP/Python/Ruby/Perl/TonLangageDeScriptPréféré avec des listes ou des
hash. Bref, ce n'est pas parce que tu représente quelque chose en
tant que classe ou objet dans tes diagrammes UML que tu doit
nécessairement en faire une classe pendant l'implémentation.
Un sujet de débat, après ça dépend des personnes. Pour ma part la techno
idéale est celle qui se rapproche le plus de la méthode de conception de
l'application, le processus de développement en somme. Donc plus le langage
est objet et mieux c'est. Après tout à quoi bon concevoir son application en
UML si c'est pour se retrouver avec des fonctions et des tableaux ?
J'ai
rencontré le problème en passant de C à C++, j'ai vite compris les limites
du C. Il en va de même depuis PHP3... Avec PHP5 on est encore loin de Java
mais on y arrivera, forcément un jour.
D'un manière générale, cette méthode (un peu de réflexion avant,
beaucoup d'aménagements pendant) ne fonctionne correctement qu'avec un
bon gestionnaire de version et des tests unitaires aussi automatisés
que possible (ce qui n'est pas toujours évident dans le cas du
développement Web). L'idée est qu'il faut pouvoir réaménager le code
sans souci de casser quelque chose. Un bénéfice secondaire des tests
unitaires est qu'ils forcent généralement à bien modulariser le code
pour le rendre testable.
On pense aussi aux tests de non régression,
JUnit de Java
qui a été adapté à
PHP (voir package PEAR).Un autre outil intéressant est un 'bug-tracker', si possible lié au
contrôleur de version. Le duo Subversion/Trac est pas mal.
En Bug Tracker libre il y a Bugzilla, je ne connais Trac que de nom.
Bruno Desthuilliers a écrit/wrote :Pourquoi faire ? PHP *est* un système de template. Enfin, à l'origine,
c'en était un, et ça continue à être utilisable comme ça. C'est con,
j'avais l'url d'un article assez intéressant de ce point de vue, mais
pas moyen de remettre la main dessus...
Brian Lozier es-tu là ?
Oui je suis là ! http://www.sitepoint.com/article/beyond-template-engine :)
Bruno Desthuilliers a écrit/wrote :
Pourquoi faire ? PHP *est* un système de template. Enfin, à l'origine,
c'en était un, et ça continue à être utilisable comme ça. C'est con,
j'avais l'url d'un article assez intéressant de ce point de vue, mais
pas moyen de remettre la main dessus...
Brian Lozier es-tu là ?
Oui je suis là ! http://www.sitepoint.com/article/beyond-template-engine :)
Bruno Desthuilliers a écrit/wrote :Pourquoi faire ? PHP *est* un système de template. Enfin, à l'origine,
c'en était un, et ça continue à être utilisable comme ça. C'est con,
j'avais l'url d'un article assez intéressant de ce point de vue, mais
pas moyen de remettre la main dessus...
Brian Lozier es-tu là ?
Oui je suis là ! http://www.sitepoint.com/article/beyond-template-engine :)
Voilà ça n'est pas facile de résumer une expérience de quelques 8 ans de
réflexion sur le sujet. Et dire que certains font ça depuis 20 ans... Ça
fait peur ! Déjà avec les références que je t'ai données tu as de quoi te
torturer l'esprit pour les dix prochaines années. Tu dois aussi pouvoir
trouver des articles qui résument ces ouvrages sur le web.
Voilà ça n'est pas facile de résumer une expérience de quelques 8 ans de
réflexion sur le sujet. Et dire que certains font ça depuis 20 ans... Ça
fait peur ! Déjà avec les références que je t'ai données tu as de quoi te
torturer l'esprit pour les dix prochaines années. Tu dois aussi pouvoir
trouver des articles qui résument ces ouvrages sur le web.
Voilà ça n'est pas facile de résumer une expérience de quelques 8 ans de
réflexion sur le sujet. Et dire que certains font ça depuis 20 ans... Ça
fait peur ! Déjà avec les références que je t'ai données tu as de quoi te
torturer l'esprit pour les dix prochaines années. Tu dois aussi pouvoir
trouver des articles qui résument ces ouvrages sur le web.
Je viens en effet, suite à tes orientations, de tomber sur un excellent
article sur MVC/PHP de Serge Tahé
(http://tahe.developpez.com/web/php/mvc/) et bien ca fait peur...
J'aurais allégrement "expédié" l'exercice de calcul d'impot pris en
exemple dans l'article, en quelques dizaine de lignes de code simple.
Quand, je vois la solution proposée en MVC, c'est certainement un
meilleur code pour la maintenance, mais c'est un code effrayant (enfin
pour l'instant, peut être qu'après plusieurs lectures, ca ira mieux :-) )
Je viens en effet, suite à tes orientations, de tomber sur un excellent
article sur MVC/PHP de Serge Tahé
(http://tahe.developpez.com/web/php/mvc/) et bien ca fait peur...
J'aurais allégrement "expédié" l'exercice de calcul d'impot pris en
exemple dans l'article, en quelques dizaine de lignes de code simple.
Quand, je vois la solution proposée en MVC, c'est certainement un
meilleur code pour la maintenance, mais c'est un code effrayant (enfin
pour l'instant, peut être qu'après plusieurs lectures, ca ira mieux :-) )
Je viens en effet, suite à tes orientations, de tomber sur un excellent
article sur MVC/PHP de Serge Tahé
(http://tahe.developpez.com/web/php/mvc/) et bien ca fait peur...
J'aurais allégrement "expédié" l'exercice de calcul d'impot pris en
exemple dans l'article, en quelques dizaine de lignes de code simple.
Quand, je vois la solution proposée en MVC, c'est certainement un
meilleur code pour la maintenance, mais c'est un code effrayant (enfin
pour l'instant, peut être qu'après plusieurs lectures, ca ira mieux :-) )
je ne crois pas que l'exemple du calcul d'impots soit a prendre
pour argent comptant. Ici, les principales composantes du
calcul simplifié apparaissent plus nettement :
http://minilien.com/?ktnr9tkQlu
on voit :
* les tranches,
* les pourcentages,
* les deductions,
* le bareme par années.
biensur, cet exemple ne gere pas tout les mecanismes d'affichages
et de formulaires complexes.
je ne crois pas que l'exemple du calcul d'impots soit a prendre
pour argent comptant. Ici, les principales composantes du
calcul simplifié apparaissent plus nettement :
http://minilien.com/?ktnr9tkQlu
on voit :
* les tranches,
* les pourcentages,
* les deductions,
* le bareme par années.
biensur, cet exemple ne gere pas tout les mecanismes d'affichages
et de formulaires complexes.
je ne crois pas que l'exemple du calcul d'impots soit a prendre
pour argent comptant. Ici, les principales composantes du
calcul simplifié apparaissent plus nettement :
http://minilien.com/?ktnr9tkQlu
on voit :
* les tranches,
* les pourcentages,
* les deductions,
* le bareme par années.
biensur, cet exemple ne gere pas tout les mecanismes d'affichages
et de formulaires complexes.
Je viens en effet, suite à tes orientations, de tomber sur un excellent
article sur MVC/PHP de Serge Tahé
(http://tahe.developpez.com/web/php/mvc/) et bien ca fait peur...
J'aurais allégrement "expédié" l'exercice de calcul d'impot pris en
exemple dans l'article, en quelques dizaine de lignes de code simple.
Quand, je vois la solution proposée en MVC, c'est certainement un
meilleur code pour la maintenance,
mais c'est un code effrayant (enfin
pour l'instant, peut être qu'après plusieurs lectures, ca ira mieux :-) )
Ca m'a permis de comprendre également, que je faisais peut être une
sorte de MVC comme Monsieur Jourdain (qui n'a pas la réputation de Steve
McConnell) mais à ma sauce. Mon code applicatif est bien séparé du code
de présentation.
Cependant, j'ai surement laissé passé des aspects de
conception important sous prétexte que les problèmes sous-jacents ne
s'était jamais posé à moi.
Du genre, quand je concois pour un type de
SGBD, je ne prévois pas qu'il soit possible de changer de type de SGBD
ou de méthode de stockage de données plus tard. C'est certainement une
erreur,
Je viens en effet, suite à tes orientations, de tomber sur un excellent
article sur MVC/PHP de Serge Tahé
(http://tahe.developpez.com/web/php/mvc/) et bien ca fait peur...
J'aurais allégrement "expédié" l'exercice de calcul d'impot pris en
exemple dans l'article, en quelques dizaine de lignes de code simple.
Quand, je vois la solution proposée en MVC, c'est certainement un
meilleur code pour la maintenance,
mais c'est un code effrayant (enfin
pour l'instant, peut être qu'après plusieurs lectures, ca ira mieux :-) )
Ca m'a permis de comprendre également, que je faisais peut être une
sorte de MVC comme Monsieur Jourdain (qui n'a pas la réputation de Steve
McConnell) mais à ma sauce. Mon code applicatif est bien séparé du code
de présentation.
Cependant, j'ai surement laissé passé des aspects de
conception important sous prétexte que les problèmes sous-jacents ne
s'était jamais posé à moi.
Du genre, quand je concois pour un type de
SGBD, je ne prévois pas qu'il soit possible de changer de type de SGBD
ou de méthode de stockage de données plus tard. C'est certainement une
erreur,
Je viens en effet, suite à tes orientations, de tomber sur un excellent
article sur MVC/PHP de Serge Tahé
(http://tahe.developpez.com/web/php/mvc/) et bien ca fait peur...
J'aurais allégrement "expédié" l'exercice de calcul d'impot pris en
exemple dans l'article, en quelques dizaine de lignes de code simple.
Quand, je vois la solution proposée en MVC, c'est certainement un
meilleur code pour la maintenance,
mais c'est un code effrayant (enfin
pour l'instant, peut être qu'après plusieurs lectures, ca ira mieux :-) )
Ca m'a permis de comprendre également, que je faisais peut être une
sorte de MVC comme Monsieur Jourdain (qui n'a pas la réputation de Steve
McConnell) mais à ma sauce. Mon code applicatif est bien séparé du code
de présentation.
Cependant, j'ai surement laissé passé des aspects de
conception important sous prétexte que les problèmes sous-jacents ne
s'était jamais posé à moi.
Du genre, quand je concois pour un type de
SGBD, je ne prévois pas qu'il soit possible de changer de type de SGBD
ou de méthode de stockage de données plus tard. C'est certainement une
erreur,