On Wed, 14 Jan 2009 14:16:05 +0100 tony Chemit <chemit@codelutin.com> wrote:
Salut les lutins,
désolé de faire mon rabat-joie une fois de plus mais je suis un peu étonné du code que je trouve dans les générateurs de ToPIA :
1) y'a du code dupliqué à gogo, on fait n fois le même test, par example pour vérifier une propriété sur un attribut, à quoi ça sert ?
A pas grand chose, mais il faut faire attention a l'exces de factorisation dans un generateur. Car il y a eu deja une version factorisee au maximum qui n'etait plus maintenable, donc il y a un juste milieu a trouver
2) du code qui devrait être identique (donc déjà dupliqué...) mais pas écrit pareil pour avoir le même résultat ? à quoi ça sert ?
sans doute parce qu'il y a eu plein de developpeur a la suite qui n'ont pas fait les efforts qu'il fallait ou qui n'ont pas ose touche a quelque chose qui fonctionne
3) du code en commentaire qui a mon avis devrait être supprimé (sinon ça sert à quoi le versionning svn ?)
oui, sans doute, mais j'aime bien laisse un peu le code en commentaire pour que lorsqu'on le relit on se dise ok, la nouvelle implantation est bonne tout je vire le code commenter avec un petit texte pour dire ce qui existait avant mais qui ne marchait pas.
4) des if-else à l'infini et cela est d'un compliqué à savoir où on en est (surtout avec le formattage à la Eclipse...)
la subtilite est ici il me semble, il faut faire attention a ne pas faire trop de factorisation ici.
5) les tag values ne sont même pas en constantes et donc on est obligé de parcourir le code des générateurs pour voir quel tagValue existe :je trouve ça trop violent, trop crade et à l'encontre d'une quelconque maintenance du code. A ce propose j'ai commencé dès que je vois un truc du genre
attr.getTagValue("lazy") à définir la constante dans GeneratorUtil et à l'utiliser :
attr.getTagValue(GeneratorUtil.TAG_LAZY)
tres bonne initiative que tes predecesseurs aurait du prendre :)
6) du code sans javadoc (et J'y suis pour quelque chose (lol... et mea culpa))
Je trouve déjà assez dur de lire les classe de template alors je pense qu'on devrait faire quelque chose pour harmoniser tout cela, mais peut-être pas tout de suite (passage a JPA).
oui, je pense qu'on peut profiter du passage a JPA pour ameliorer la lisibilite/maintenabilite.
Je dois (ou on doit bientôt passer sur JPA et donc revoir tous les générateurs), j'espère qu'on prendra soin de rendre nos générateurs plus compréhensibles et moins (comment dirais-je sans blesser personne LM-atelier-esque...)
De manière générale je trouve qu'on ne prette vraiment pas attention à la propreté de notre code et que coder à l'arrache est une hérésie alors que y'a plein de très bonnes choses et idées dans notre code, alors un peu de rigueur dans le codage serait cool...
Oui, je dois aussi toujours ecrire les bonnes pratiques des lutins pour le code. -- Benjamin -------------------- tél: +33 (0) 2 40 50 29 28 email: poussin@codelutin.com () campagne du ruban ascii http://www.codelutin.com /\ pour les mails en ascii