Linus Torvalds : que vos commentaires soient beaux !

Par:
fredericmazue

mar, 12/07/2016 - 15:31

Linus Torvalds, le grand guru du noyau Linux, est connu pour ses sorties au langage fleuri.

Le personnage est pittoresque, même si souvent la manière est très contestable et très contestée. Mais il le dit lui-même : je ne suis pas quelqu'un de gentil.

Si la manière et les termes employés sont sujets à caution, son argumentation est en revanche très valable. Bien sûr tout le monde ne sera pas d'accord avec lui. Que serait l'univers de l'informatique sans les querelles entre informaticiens compétents  ? ;-) :-) Cependant, lorsqu'il argumente pour du bon code, facilement lisible et maintenable, il n'a pas tort.

Le bon code c'est bien, mais le bon code bien commenté c'est mieux. Le commentaire est un art en programmation. Mais outre le contenu, avec Linus Torvalds, le commentaire devient aussi un art visuel ou un art graphique :-) Bref le commentaire ne doit pas agresser l'oeil :-)

Linus vient d'intervenir sur la liste de diffusion du noyau, afin que les développeurs s'attachent à écrire des commentaires 'beaux'. Et non plus des commentaires 'dégoûtants', 'déséquilibrés' et 'de merde'. Pas de doute c'est bien Linus qui a écrit le billet :-)  

Pour Linus il y a trois façons de faire

(a)
/* This is a comment *./

(b)
/*
* This is also a comment, but it can now be cleanly
* split over multiple lines
*/

(c)
// This can be a single line. Or many. Your choice.

A la rigueur ceci peut-être accepté : (Linus fait preuve de tolérance, c'est nouveau :-)

(d)
/* This is an alternate multi-line format
that isn't horrible, but not kernel style */

Mais en aucun cas les horreurs ci-dessous ne doivent figurer dans le code du noyau selon lui :

(no)
/* This is disgusting drug-induced
* crap, and should die
*/

(no-no-no)
/* This is also very nasty
* and visually unbalanced */

Or le code réseau du noyau est tout pollué par cette m.... dégoûtante dit-il, et il convient d'y remédier.

C'est Linus... mais là encore, il n'a pas forcément tort... :-)

Source : liste de diffusion kernel Linux via developpez.com