Pourquoi les entreprises devraient-elles investir dans la refactorisation des composants, sans ajouter aucune nouvelle fonctionnalité au produit? Je suis d'accord que c'est pour nettoyer le code, corriger les bugs et supprimer le code mort - mais quel est le prendre?Besoin de refactoriser?
Répondre
Maintenance. Cela réduira considérablement vos coûts de maintenance. Il n'y a aucune comparaison entre le code entièrement factorisé et le rebut qui se trouve dans la plupart des dépôts d'entreprises. Ce dernier est pratiquement sans valeur, tandis que le premier est de l'or.
Cela dépend de qui vous demandez. Un gestionnaire non technique peut dire qu'il n'y a pas besoin. Un développeur de support dirait que cela aiderait à réduire les coûts de maintenance.
Le refactoring doit faire partie de votre travail quotidien. Vous refactorisez constamment votre code pour le rendre plus lisible/maintenable/robuste/réutilisable, etc.
Votre code est un document évolutif. Si ça ne change pas avec le temps, ça devient stagnant.
Investir dans les tests. Investir dans le refactoring. Investir dans l'écriture de bon code.
Pour commencer par: Le refactoring est une taxe. Si le code fonctionne, alors vous passez du temps à corriger le code qui fonctionne déjà, je peux voir que les types d'entreprises ont l'air perplexe maintenant. Un dicton que j'aime est "Legacy est un autre mot pour le code qui fonctionne."
Maintenant, il existe de nombreux problèmes avec une base de code croissante qui doivent être résolus avant de passer plus de temps à gérer le code qui développe des fonctionnalités. Personnellement, j'aime la philosopie "No Broken Windows".
S'il n'est pas cassé, ne le réparez pas.
Mais si vous devez commencer à adapter les composants à de nouvelles exigences imprévisibles, il est souvent judicieux d'identifier les bits que vous pouvez extraire et réutiliser. Vous devez être certain que vos modifications introduisent des bogues inattendus - vous aurez donc besoin d'une bonne couverture de test.
maintenance. Parfois, un projet arrive à grand ou avec trop de correctifs "rapides" pour être encore étendu. Vous devez juste vous asseoir calmement et nettoyer et refactoriser.
Alors que les autres réponses sont toutes vraies, la puissance du refactoring est qu'il vous permet de modifier la conception de votre code avec des résultats prévisibles. Le plus gros problème de maintenance est qu'il est pratiquement impossible d'anticiper toutes les exigences pour les applications complexes.
La plupart d'entre elles peuvent être traitées en ajoutant une nouvelle fonctionnalité comme un nouveau rapport ou une nouvelle commande. Mais d'autres exigeront qu'une partie de votre demande soit repensée. C'est là que le refactoring et ses tests unitaires entre frères et soeurs entrent en ligne de compte. En utilisant des techniques de refactoring, vous pouvez effectuer les modifications de conception nécessaires en toute sécurité.
Ce n'est pas une panacée, mais un autre outil qui améliore la qualité de votre code. (programmation structurée, orientation objet, etc.)
- 1. Besoin d'aide pour refactoriser mon script python
- 2. Besoin d'aide pour refactoriser un simple script d'animation jquery
- 3. Comment refactoriser cette validation?
- 4. Comment refactoriser cette conception
- 5. Comment refactoriser ce code?
- 6. Dois-je refactoriser avec hobo?
- 7. Comment refactoriser ce code jQuery?
- 8. Comment refactoriser ceci en J?
- 9. Comment refactoriser le long contrôleur frontal?
- 10. Comment refactoriser plusieurs requêtes Linq similaires?
- 11. Comment refactoriser ce code Ruby (controller)?
- 12. Outil pour refactoriser les expressions booléennes
- 13. Comment refactoriser les variables globales à partir de votre code
- 14. comment mieux refactoriser deux classes avec beaucoup de logique conditionnelle?
- 15. Comment refactoriser une fonction de contrôleur Codeigniter trop longue?
- 16. Comment refactoriser cette série répétée de blocs "if"?
- 17. Comment refactoriser ces constructeurs de classes surchargés? (C#)
- 18. Comment refactoriser des requêtes de mise à jour SQL répétitives?
- 19. est-il sûr de refactoriser mes modèles django?
- 20. Visual Studio 2005 - Refactoriser plusieurs attributs en même temps?
- 21. Comment refactoriser plusieurs requêtes Linq-To-Sql similaires?
- 22. Comment refactoriser ces deux méthodes similaires en une seule?
- 23. Comment refactoriser ce code Ruby pour supprimer les doublons?
- 24. Comment refactoriser ce conditionnel pour éviter la répétition?
- 25. Besoin de ClassInterfaceType.None?
- 26. Besoin de base de données
- 27. Comment refactoriser, corriger et optimiser cette fonction de remplacement de caractères dans java
- 28. Besoin besoin Allocatable Array en FORTRAN
- 29. Besoin générateur de trafic IPv6
- 30. Besoin Personnalisable Convertisseur de devises
Mais quelle est la valeur ajoutée pour le client ?? – atVelu
Il n'y a pas de client unique: le client existe tout au long du cycle de vie du code. Chaque correction de bogues et mise à jour est plus facile et plus rapide, de sorte que le produit à un moment donné a plus de stabilité. Je travaille actuellement sur votre prochain décodeur - voulez-vous que je cesse de refactoriser (croyez-moi, la réponse est non)? –