Question

Que devez-vous faire, si un collègue modifie votre code?

Sans le but d'ajouter des fonctionnalités ou corriger des bugs, juste pour changer son apparence ...

Était-ce utile?

La solution

Parlez-leur sujet. Allez dans la conversation avec l'attitude de « Ils ne fais pas ça pour embêter moi ou parce qu'ils ont une certaine forme de trouble obsessionnel-compulsif,. Ils essaient de faire mon code mieux »

Parce que vous pourriez avoir tort. Cela pourrait être une correction de bug subtil et que vous venez de ne pas repérer.

Ou, il pourrait être qu'il ya une norme de codage que vous ne savez pas que vous ne respectez pas, et ils sont tout simplement le corriger.

Ou, il pourrait être qu'ils essaient de vous importuner, ou ils ont une certaine forme de trouble obsessionnel-compulsif. Si tel est le cas, demandez-leur bien d'arrêter, et si cela ne fonctionne pas, prenez-le avec votre patron.

Mais vous ne saurez jamais à moins que vous demandez.

Autres conseils

Je ne suis pas marié à la façon dont mon code cherche à me dérange. :) J'essaie d'apprendre des changements. Est-ce que mon collègue de travail ajuster les noms de variables? Ecrire une boucle plus efficace? Rendre le code plus lisible?

Si je ne vois pas comment les changements ont amélioré ce qui était déjà là, je demande habituellement le collègue de travail qui a fait les changements que la motivation était derrière eux. Il est possible que l'avantage est tout simplement pas évident pour moi. Et si je ne me trompe pas et ils ont tort, alors peut-être que je peux expliquer pourquoi je l'ai écrit comme je l'ai fait.

Si tout le reste échoue, annulez l'enregistrement. ;)

Modifier. Tous les paris sont ouverts si le désir de faire des changements cosmétiques introduit un bug, mais

OMI vous et votre équipe devrait utiliser une norme de codage de toute façon. Si tel est le cas, les questions devient «ce que votre code d'origine conforme à la norme? Si oui, votre collègue ne doivent pas toucher votre code, à moins de changer fonctionnellement. Si non, je suis alors peur que votre collègue a le droit de ranger votre code. En tant que chef du projet, je me retrouve à faire tout le temps.

Si vous n'êtes pas en utilisant une norme de codage alors toute l'argumentation de ce qui constitue un bon code »devient trop subjective. Dès lors, pourquoi vous devriez utiliser une norme de codage:)

En tant que les personnes (les personnes qui parfois reformater le code d'autres personnes), la principale raison pour laquelle je le fais est la lisibilité. Certaines personnes sont tout simplement extrêmement bâclé avec leur indentation ou avec le mélange des onglets et des espaces.

La principale chose que j'ai l'habitude de changer réduit les longues lignes pour que je puisse lire le tout sans défilement horizontal. Je vais te casser les déclarations complexes en instructions distinctes ou les appels de méthode reformater / déclarations à la liste un paramètre par ligne si elle ne tient pas entièrement confortablement sur une seule ligne. Je vais aussi modifier les commentaires, que ce soit pour corriger les erreurs en anglais ou tout simplement pour clarifier les choses.

Oui, je peux le laisser seul, mais je préfère réduire l'effort mental nécessaire pour lire le code.

Que devriez-vous faire à ce sujet? Tout d'abord, considérer que peut-être cette personne fait mieux votre code. En outre, vous devez vous assurer que vous avez un certain consensus dans votre équipe sur la façon dont doit être formaté code. Si chaque personne a des habitudes différentes, il va ralentir tout le monde vers le bas. Si elles ne font pas votre code mieux et ils vont à l'encontre du grain, alors vous devez les confronter à ce sujet. Si cela ne vous pourriez alors travailler pas besoin d'obtenir d'autres personnes impliquées.

Demandez-leur pourquoi ils le font; une explication valable peut diminuer votre frustration, mais vous devriez leur faire savoir à quel point cela vous dérange. Qui sait, peut-être qu'ils pensaient qu'ils vous faisaient une faveur et arrêteront quand ils apprennent vous offense. Ou vous pouvez avoir affaire à quelqu'un qui souffre d'une truely condition médicale.

est il / elle a permis à? Est-ce que les changements améliorent le code? Si oui, avaler votre fierté. Si vous vous sentez la qualité du code est aggravé, le prendre avec le collègue et leur demander pourquoi ils ont ressenti le besoin de changer votre code sans avantage évident. Si cela se fait par dépit ou parce que la personne se sent qu'ils sont mieux que vous par erreur, et vous ne pouvez pas travailler dehors avec eux, prenez avec votre patron.

IDE comme Visual Studio ont une option appelée Format Document qui forme le code selon les règles définies par l'utilisateur dans l'EDI. Il pourrait être votre collègue utilise ce (soit automatiquement sans le savoir, soit par application délibérée). Peut-être leur IDE utilise des espaces au lieu des onglets, ou vice-versa, et ceux-ci sont appliquées automatiquement sans même le savoir? Mais vous avez besoin de parler avec eux pour savoir.

Soit dit en passant, je vais le code reformater souvent des collègues si elle est de toute évidence ne suit pas une sorte de système mise en forme (à savoir qu'il est dans tous les sens). Il est une façon subtile, espérons de leur faire un avis. (Cependant, je ne serais pas reformater si elle était propre, mais pas à mon goût).

S'il le changer afin qu'il réponde aux normes de codage de votre équipe, vous devez suivre les normes la prochaine fois.

S'il le change de telle sorte qu'il ne suit plus les normes de codage de votre équipe, lui faire ce qu'il fait de mal et lui changer de retour.

... Votre équipe a un ensemble de formatage du code des normes qui sont utilisées par tout le monde, non?

Code de temps en temps Réorganiser écrit par des collègues en désordre (ou fautes de frappe fixes dans les commentaires). Ils savent que je suis obsessionnelle dans le code mise en forme et l'ordre et donc ils me laisser faire sans se plaindre trop. Parfois, ils me donnent aussi un soda libre ou cookie.

Bien sûr, cela est occasionnels travail, car il a cassé la fonctionnalité "blâme" dans SVN.

Ceci est aussi un moyen très simple de faire une sorte de revue de code (je lis habituellement la plupart du code commis par mes collègues dans les modules sur lesquels je travaille).

conventions de code est la réponse. Vous devriez avoir un lieu de travail. Si vous n'êtes pas, commencer dès maintenant (un bon point de départ est guide de style google ). Quand il y a écrit (ou au moins communément connu) les règles de la réponse à votre question est trivial.

Je sens que vous pensez qu'il est offensant de le faire ...? Par exemple, je me serais immédiatement fixer ce code

int myFunction( ) {

    int i ;
  return  0;

}

pour devenir

int myFunction() {
    int i;
    return 0;
}

... devrais-je être puni à cause de mon action? Dans la vraie vie, j'ai en fait des tonnes de journaux SVN lire « Mise en forme ». ; -)

Utiliser un outil de vérification de style

Mise en route de StyleCop ou similaires et de faire respecter les règles de style de code et faire aussi une obligation pour tous les développeurs de l'utiliser. Tout le code aura le même sans exception. Et se réunir avec wiseheads pour discuter des règles les plus appropriées pour votre organisation. Même si les règles par défaut sont très similaires au code NET Framework lui-même déjà.

Il est la meilleure façon de le faire. Je me suis retrouvé corrigeons quelqu'un d'autre code à l'un de mes employeurs précédents parce que cet autre gars était l'écriture de code avec des quantités excessives de lignes vides et pas de règles d'indentation que ce soit. Code était en fait illisible par un développeur moyen. Si StyleCop existerait retour il serait alors faire beaucoup d'entre nous vraiment heureux.

est une pensée que j'ai vu sur internet parler de refactoring et peut-être expliquer pourquoi quelqu'un toucher votre code pour le rendre mieux:

Pourquoi?

Il y a deux raisons principales à refactor:

  1. Pour améliorer le code / conception avant la construction sur son dessus: Il est vraiment difficile de trouver un bon code sur la première tentative. Le premier essai de mettre en œuvre toute volonté de conception initiale nous montrer que nous mal interprété ou oublié une certaine logique.

  2. Pour adapter à l'évolution du exigences. Le changement se produit dans la développement de logiciels; être sensibles au changement est mieux avoir une bonne base de code. Nous avons deux options pour les deux scénarios, le chemin code ou refactoriser. patcher le Code nous conduira à inmaintenable code, et augmentera notre la dette technique, il est toujours mieux à refactoring.

Quand?

  1. Le plus tôt sera le mieux comme cela est plus facile.

  2. plus rapide et moins risqué de refactoring sur un code récemment refondus plutôt que d'attendre de refactoring pour le code à presque terminé.

Quoi?

  1. Tout le code et toute la conception sont candidats à refactoring.

  2. Une exception pour quelque chose qui ne refactoring pourrait être un morceau de travail de code qui est la qualité est faible, mais en raison d'être proche d'une date limite, nous préférons garder notre dette technique plutôt que de risquer la planification.

Il vous suffit de le laisser faire de son mieux, si ce serait formidable pour les deux et gagner du temps à l'avenir!

hourras

Licencié sous: CC-BY-SA avec attribution
scroll top