Existe-t-il une trop grande uniformité? Là où je travaille, nous avons bien sûr des normes, notamment des conventions de dénomination, des architectures, des cadres à exploiter, etc.
Par exemple, écrire des if
instructions sur plusieurs lignes par rapport à une ligne, en utilisant l' ??
opérateur de coalescence nulle c # au lieu de dire == null
, les quantités d'espacement pour les indentations, etc.
Il me semble que cela commence à devenir un choix de style personnel et n'a pas besoin d'être uniforme dans une équipe ou une entreprise. Ce qu'une personne pense en lit plus clairement, une autre ne le peut pas. Y a-t-il une valeur à cette uniformité "supplémentaire"?
Réponses:
L'uniformité n'est pas un problème (c'est bien) mais la rigidité ou l'inflexibilité peuvent l'être. Si, en recherchant l'uniformité, vous devenez dogmatique, le mal que vous faites à l'équipe peut être plus grand que le bien qui provient de l'uniformité (éventuellement) qui en résulte.
Il est préférable de définir un style de base pour les choses les plus importantes (normes de dénomination et de capitalisation, indentation, nouvelles lignes et placement des crochets, etc.), de définir des recommandations pour les choses moins importantes (si le format de l'instruction, d'autres espaces autour des parenthèses, etc.) , puis ne vous inquiétez pas du reste.
la source
Lorsque potentiellement des dizaines de personnes travaillent sur un projet au cours des années de sa durée de vie, cela devient parfois déroutant lorsque vous devez changer de style. Imaginez-vous en train de lire un livre où différents chapitres sont écrits par différents auteurs qui ne maintiennent que quelque peu le style d'écriture. C'est possible, mais c'est ennuyeux.
La plupart des IDE peuvent appliquer des styles de nos jours, donc si nécessaire, vous pouvez distribuer (en tant que partie du code source du projet) un fichier de préférences IDE qui spécifie le style de codage choisi et que tout le monde installe et utilise pour formater le code qu'ils écrivent . Je parie qu'il y a même des façons de reformater / styliser le code à l'enregistrement (bien que je n'ai pas encore eu à enquêter).
la source
Un cas de sur-uniformité que j'ai vu est d'avoir une norme unique qui s'applique à tous les langages de programmation indépendamment de leur pertinence:
goto
même dans des langues comme C sanstry
...catch
.InitialCaps
noms (comme dans MFC et C # de Microsoft) dans JavaScript où se trouve la bibliothèque standardinitialLowerCase
.la source
Je ne pense pas qu'il y ait trop d'uniformité. Cependant, je trouve souvent que trop de SPÉCIFICITÉ dans les normes de codage. Les avantages pour tout le monde de mettre l'accolade d'ouverture sur une ligne distincte sont au mieux douteux et ne l'emportent pas sur le temps passé à en discuter ou à résoudre les problèmes cosmétiques dans le code.
la source
J'aurais 2 arguments pour l'uniformité:
Promouvoir la propriété collective. Que quelqu'un puisse aller éditer le code de quelqu'un d'autre sans craindre que le «bébé» de quelqu'un soit sur le point d'être blessé par le changement. Une sorte de mentalité "Nous sommes tous dans le même bateau".
Facilité d'y ajouter. Si quelque chose a déjà été fait ailleurs, cela peut être pris et réutilisé éventuellement. Certaines conventions peuvent aider à rendre les choses plus faciles à lire ou à changer parfois, c'est donc un autre avantage pour moi.
la source