J'ai vu un certain nombre de questions relatives à la métrologie du code sur SO ces derniers temps, et je me demande pourquoi il y a une telle fascination. Voici quelques exemples récents :
- Quelles sont les mesures de code qui vous convainquent que le code fourni est mauvais ?
- quand, si jamais, le nombre de lignes de code est-il une mesure utile ?
- la rédaction de tests de qualité
Selon moi, aucune mesure ne peut remplacer un examen du code :
- certaines mesures peuvent parfois indiquer des endroits qui doivent être revus, et
- Des changements radicaux dans les mesures sur de courtes périodes peuvent indiquer des endroits qui doivent être révisés.
Mais je ne peux pas imaginer une seule mesure qui, à elle seule, indiquerait toujours un "bon" ou un "mauvais" code - il y a toujours des exceptions et des raisons pour lesquelles les mesures ne sont pas visibles.
Y a-t-il des informations magiques à tirer des mesures de code que j'ai négligées ? Les programmeurs/gestionnaires paresseux cherchent-ils des excuses pour ne pas lire le code ? Les gens sont-ils confrontés à des bases de code gigantesques et cherchent-ils un point de départ ? Que se passe-t-il ?
Note : J'ai posé certaines de ces questions dans les fils de discussion spécifiques, à la fois dans les réponses et les commentaires, et je n'ai pas reçu de réponses, alors j'ai pensé que je devais poser la question à la communauté en général, car j'ai peut-être manqué quelque chose. Ce serait bien d'exécuter un travail de métrique par lots et de ne plus jamais avoir à lire le code des autres (ou le mien), mais je ne pense pas que ce soit pratique !
EDIT : Je connais la plupart, sinon la totalité, des mesures discutées, mais je ne vois pas l'intérêt de les prendre isolément ou de les considérer comme des normes de qualité arbitraires.
2 votes
Mon code métrique pour le code C# est le suivant
the number of StyleCop warnings + 10 * the number of FxCop warnings + 2 to the power of the number of disabled warning types
. Ce n'est qu'une fois que la valeur de cette métrique est aussi faible que possible qu'il vaut la peine pour un humain de commencer à examiner le code (à mon avis). En résumé : des outils sophistiqués plutôt que des formules simplistes peuvent contribuer à améliorer la qualité du code. Ceci est probablement hors sujet.0 votes
@Alfred -
I just don't see the point of them in isolation or as arbitrary standards of quality.
- Qui songerait à utiliser les indicateurs de manière isolée ou comme des normes de qualité arbitraires ?0 votes
@luis, c'était mon édition, basée sur plusieurs questions qui ont engendré cette question - la réponse est "gestion", principalement.
0 votes
+1 pour la liste des points où ils sont utiles, je pense que c'est exactement ce que vous décrivez