Salut
Je faisais remarquer aux participants d’une PSD le mois dernier que l’on passe énormément plus de temps à lire du code qu’à en écrire. C’est pour cette raison, entre autres, que je leur conseillais d’investir dans la lisibilité du code. Une façon de faire ça qui fonctionne bien pour moi c’est d’écrire l’intention du test en langage naturel, puis de m’arranger pour faire compiler et passer ce que je viens d’écrire. Un exemple ? Allez, un exemple…
Considérez le test suivant. Sans doute vous trouverez que j’exagère de montrer autant de choses qu’il ne faut pas faire, mais c’est pour l’exemple.
Le défaut de ce test qui m’intéresse aujourd’hui c’est que beaucoup de gens vont le lire plusieurs fois pour bien comprendre son intention. Si j’essaye de me concentrer sur l’intention du test, en tentant d’activer mon meilleur anglais, cela me donne envie d’écrire les choses plutôt comme ci-dessous.
A partir de là, je dis souvent aux participants « il ne vous reste plus qu’à placer les parenthèses et les points où cela vous arrange pour faire compiler tout ça ». Il y a bien sûr plusieurs façons de le faire et je ne vais pas m’étendre sur ce point. Juste mentionner que pour ma part j’aime bien le pattern builder et, en Java, les imports statiques. Cela peut par exemple donner le résultat ci-dessous.
C’est plus clair non ?
![]()



