J'ai un logiciel que j'ai écrit il y a environ 2 ans et j'ai besoin de quelques fonctionnalités supplémentaires. J'ai réalisé que c'était dans un horrible gâchis, et j'ai envie de tout déplacer, de ranger, etc. J'ai lu l'article de Joel on Software sur le fait de ne pas recommencer , alors quelle est la meilleure voie à suivre?
refactoring
maintenance
billy.bob
la source
la source
Réponses:
Vous disposez de trois options de base:
Si l'application est très petite et un vrai gâchis , recommencer pourrait être votre meilleur choix.
Refactor .
Vivez avec le désordre et piratez les fonctionnalités supplémentaires.
En règle générale, l'option (2) est votre meilleur choix.
La quantité de refactoring que vous effectuez dépendra de la ressource que vous investissez par rapport à la valeur que vous retirez. Les questions à poser comprendront:
D'après mon expérience, il est très facile de s'embrouiller correctement lors d'une séance de refactoring. Les leçons les plus importantes que j'ai apprises sont les suivantes:
la source
Eh bien, au moins refactoriser suffisamment pour que la nouvelle fonctionnalité puisse être ajoutée en toute sécurité. Ce n'est pas pire. Le reste dépend de la motivation, du budget et des contraintes de temps - mais sachez que le nettoyage complet d'un gâchis peut prendre plus de temps que sa création d'origine.
la source
Cette fois, en réparant les choses, assurez-vous de le documenter. La prochaine fois que vous verrez le code, il sera beaucoup plus facile de rappeler les choses.
la source
Cela dépend, cela va-t-il coûter plus de temps pour le maintenir parce que c'est un gâchis, ou pour le réécrire afin que ce ne soit pas un gâchis et facile à entretenir. Je suis personnellement en train de passer par là en ce moment, je convertis un site intranet en ASP.Net MVC3 parce que l'ancien code était un tas de merde (que j'ai écrit) parce qu'il était censé être jetable (oui, je devrais savoir mieux ). Le vieux tas de merde est toujours là, et c'est un casse-tête d'ajouter des fonctionnalités et de corriger des bugs. MVC est magnifique et rend le travail vraiment agréable, donc il faut une réécriture.
la source