Question

Disons que vous travaillez dans un endroit où chaque modification de code source doit être associé à un bug en rapport ou de la fonction de demande, et il n'y a aucun moyen d'obtenir que la politique de réforme.Dans un tel contexte, quelle est la meilleure façon de traiter avec le code refactorings (qui est, les modifications d'améliorer le code, mais ne permettent pas de résoudre un bug ou d'ajouter une fonctionnalité)?

  • Écrire un bug-report et d'associer le refactoring avec elle.
  • Écrire une fonction de demande et d'associer le refactoring avec elle.
  • Se faufiler dans les refactorings tout en travaillant sur le code qui est associé à un bug-report/fonction de demande.
  • Il suffit de ne pas faire du refactoring.
  • D'autres

Notez que tous les rapports de bug et les descriptions des fonctionnalités sera visible par les gestionnaires et les clients.

Était-ce utile?

La solution

Je vote pour le "se faufiler dans les refactorings" approche, qui est, je crois, la manière dont le refactoring est censé être fait en premier lieu.C'est probablement une mauvaise idée de revoir juste pour le plaisir de "nettoyage du code." Cela signifie que vous êtes à faire des changements sans raison réelle.Le Refactoring est, par définition, la modification de la sans avoir l'intention de corriger des bugs ou ajouter des fonctionnalités.Si vous êtes à la suite de la BAISER principe, toute nouvelle fonctionnalité va avoir besoin d'au moins quelques refontes parce que vous n'êtes pas vraiment penser à comment faire de la plupart des système extensible possible la première fois autour.

Autres conseils

Si vous travaillez sur un bloc de code, dans la plupart des cas, c'est parce qu'il y a une correction de bug ou une nouvelle fonctionnalité qui exige que le bloc de code à changer, et le refactoring est soit avant le modifier afin de le rendre plus facile, ou après le changement de ranger le résultat.Dans les deux cas, vous pouvez associer le refactoring avec cette correction de bug ou une fonctionnalité.

La manière dont nous travaillons, c'est:Il doit y avoir une bonne raison de refactoriser le code, sinon pourquoi?

Si la raison est de permettre à une autre fonctionnalité qui permet d'utiliser le même code, associer les changements avec l'autre caractéristique de la demande.

Si c'est pour faire quelque chose de plus rapide, créez une demande de fonctionnalité pour les plus rapides 'xyz' et associer les changements avec - la les clients de voir que vous êtes à améliorer le produit.

Si c'est à la conception d'un bug, journal le bug.

Il est intéressant de noter que, dans mon environnement, la politique ne peut pas être appliquée.Mais intelligent managers peuvent obtenir des rapports de changements et s'ils n'ont pas un bug\demande de référence dans le commit texte suivi.

Permet d'avoir un oeil à chaque option:

  • Écrire un bug-report et d'associer le refactoring avec elle.

Si vous sentez que, à votre avis, le code d'origine pose un risque pour la sécurité ou des risques de panne ou d'instabilité.Écrire un petit rapport de bug décrivant le danger, et puis le fixer.

  • Écrire une fonction de demande et d'associer le refactoring avec elle.

Il peut être difficile de réacteur de code basé sur une demande de fonctionnalité.Mais vous pouvez utiliser valide demande de fonctionnalité pour ce faire, ce qui m'amène au point suivant...

  • Se faufiler dans les refactorings tout en travaillant sur le code qui est associé à un bug-report/fonction de demande.

S'il y a un bug ou d'une fonction, l'état de la fonction x a dû être légèrement modifié pour corriger le bug ou d'ajouter la fonctionnalité.

  • Il suffit de ne pas faire du refactoring.

Cela semble suggérer le développement de soi par le biais de l'amélioration d'une application n'est pas autorisée.Les développeurs devraient être autorisés, si ce n'est, de les encourager à explorer de nouvelles techniques et technologies.

  • D'autres

On pourrait peut-être discuter de votre amélioration à la réunion, donner convaincante des raisons pour lesquelles les changements doivent être effectués.Puis au moins vous aurez la gestion de la sauvegarde à la modification, sans avoir à se faufiler dans le code par une autre méthode.

  • D'autres

Si vous travaillez dans un endroit avec ce genre de inflexibles (et ridicule) de la politique, la meilleure solution est de trouver un autre emploi!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top