Je formate presque toujours mon code avant de m'engager pour m'assurer qu'il est fait correctement. La plupart de mon équipe ne se soucie pas vraiment et ne formate pas toujours correctement leur code (des choses mineures qui n'affectent pas le code mais affectent la lisibilité lorsque vous essayez de le maintenir).
J'ai récemment installé les outils électriques VS qui ont une option "Formater lors de l'enregistrement", et j'ai apporté une modification à un fichier qui n'a pas été formaté auparavant. Le vice-président du développement est venu me voir et m'a réprimandé pour le formatage car il apparaît dans l'outil de fusion comme ayant presque tout le fichier modifié, au lieu d'une ou deux lignes (il ne peut donc pas voir exactement ce que j'ai modifié facilement), et m'a dit de désactiver le format lors de la sauvegarde à l'avenir. Bien que je comprenne cette préoccupation, je trouve parfois difficile de trier le code qui n'est pas formaté, et l'OMI devrait être formaté correctement tout le temps de toute façon. Notez que je ne reformate pas simplement des choses sur un coup de tête. Mais comme j'écris du code, je vais soit utiliser l'outil électrique, soit appuyer sur le raccourci clavier pour formater le texte pour le rendre plus facile à lire, et dans SVN cela apparaît comme une modification.
Je demande donc, est-ce que le formatage du code est toujours une mauvaise chose? Ses préoccupations sont-elles plus valables que de s'assurer que le code est lisible?
la source
Réponses:
Tout d'abord, votre équipe doit choisir une convention de mise en forme et la respecter. Vous devez vous mettre d'accord et faire en sorte que tout le monde s'y tienne afin que personne ne se dispute à quoi les choses devraient ressembler. Cela ne devrait pas être quelque chose que vous faites vous-même.
Quant à votre vraie question. Le formatage du code n'est pas une mauvaise chose. Ce qui est mauvais, c'est de faire des changements de formatage majeurs dans le même commit que les changements de code. Lorsque votre équipe parvient à un consensus sur la façon dont les choses doivent être formatées, faites un passage dans le code et formatez tout. Vérifiez cela par lui-même. Le message de validation indiquera clairement que les modifications ne sont que des espaces blancs et ne sont pas fonctionnelles. Ensuite, lorsque vous devez apporter des modifications fonctionnelles, elles sont dans un commit différent afin qu'elles soient clairement visibles.
la source
Non, le formatage du code est très important . Cependant, les commits doivent être effectués en deux groupes:
Utilisez le message de validation pour indiquer que seuls les cosmétiques ont été modifiés. Ceux-ci peuvent être facilement ignorés lors de la recherche de modifications plus substantielles.
la source
Vous avez tous les deux un point, mais vous pouvez tous les deux obtenir ce que vous voulez. Formatez d'abord le code, archivez uniquement cette modification. Ensuite, apportez vos modifications fonctionnelles et vérifiez-les dans un deuxième temps.
la source
Je suis également un formateur de mise en forme, voici donc quelques conseils:
Première étape requise: faire en sorte que l'équipe se mette d'accord sur une norme de mise en forme de base, comme les tabulations par rapport aux espaces, les positions des accolades, les styles de commentaire, etc. sur tous les orteils.
Nettoyez la mise en forme uniquement autour du code que vous modifiez. Si vous apportez des modifications à une seule fonction, nettoyez cette fonction. Au moins avec le temps, vous aurez un code plus beau.
Effectuez des révisions de formatage majeures en tant que validation distincte, sans autres modifications de code. Vous ne devriez le faire que lorsque vous êtes moins susceptible de vouloir comparer le code après la modification à avant la modification, car la comparaison entre des différences comme celle-ci peut être ennuyeuse. Je fais habituellement des nettoyages comme première chose avant un développement majeur sur ce code.
Obtenez un bon outil de différenciation qui peut effectuer le marquage dépendant de la langue des changements importants et des changements non significatifs. Mon diff préféré aussi Beyond Compare marque les changements de code réels dans une couleur et les espaces / commentaires uniquement les différences dans une autre.
modifier pour un autre conseil:
la source
Vous ne devez pas reformater et valider les modifications apportées au code d'autres personnes, sauf si:
Vous remarquerez dans tous les cas que je me réfère aux normes de codage d'équipe. Je crois fermement en des normes de codage raisonnables et convenues pour l'équipe. Si vous les avez, alors le développeur d'origine devrait revenir en arrière et nettoyer son code pour adhérer aux normes de l'équipe, vous ne devriez pas le faire derrière son dos. Si vous n'avez pas de normes (et vous devriez), vous ne devriez pas modifier le code d'un autre membre de l'équipe pour adhérer à vos philosophies, en particulier derrière son dos. N'oubliez pas que vous faites partie d'une équipe et que les normes de codage sont importantes, il en va de même de la confiance et du respect entre les membres de l'équipe.
la source