De l’émotion dans votre code

Vous vous êtes sans doute déjà retrouvé face à un code qui ne vous a pas laissé indifférent, pour le meilleur, mais souvent pour le pire.
Pour s’exprimer, le développeur peut bien entendu utiliser les commentaires. Il existe un outil qui va plus loin, permettant au développeur d’exprimer et partager ses émotions, son état d’esprit et d’une certaine manière, donner vie à son code…
La “firme de la vue de la montagne”, avec Google Annotations Gallery, met à disposition un ensemble d’annotations permettant au développeur de s’exprimer au travers de son code.
Ces annotations peuvent prendre la forme de remarques ou informations qu’un développeur souhaite partager avec son équipe.

Exemples :

  • Vous êtes face à un code incompréhensible, mais il fait ce qui est demandé. Avec @Magic, laissez ce code vivre sa vie et passez à autre chose.
  • @BossMadeMeDoIt indique que le code a été écrit sous la torture pression d’éléments extérieurs.

Il est possible d’aller encore plus loin, avec un peu de configuration, en utilisant des annotations implémentant un comportement.

Exemples :

  • @CantTouchThis remplace l’implémentation de la méthode par l’affichage du message “Stop” dans la sortie standard.
  • @ThisHasBetterBe / @ThisHasBetterNotBe permet de s’assurer que le paramètre de la méthode est conforme à ce qui est attendu

Si cela peut vous détendre, défoulez-vous sur un legacy code avec ces annotations. Attention toutefois à ne pas trop jouer à l’@Roulette (russe) en production. Veillez également à garder une bonne cohésion d’équipe en évitant d’abuser du @Blame ou encore du @IAmAwesome.

Après tout, les développeurs ne sont que des êtres humains, avec leurs émotions.
Plus de détails et d’exemples ici : http://code.google.com/p/gag/.

NB: Je souhaite rendre à César, ce qui est à César, cet article n’est pas de moi et je vous invite à suivre la source :)

Source : So@t – Article : Mettez de l’émotion dans votre code
Publié dans Non classé

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*