Comment décider entre architecture modulaire et refactorisation incrémentale ?
#1
Salut tout le monde, je me pose une question depuis quelques jours. Je travaille sur un petit projet perso en Python, une sorte d’outil pour automatiser des tâches répétitives que je fais au boulot. J’ai tout bricolé avec des scripts séparés, et ça marche, mais c’est le bordel total. Là, je me demande si je devrais tout réécrire proprement en utilisant une architecture modulaire, ou si je continue comme ça en ajoutant des bouts quand j’ai besoin. D’un côté, j’ai peur de passer une éternité à tout refactoriser pour un gain minime, mais d’un autre, ça deviendra ingérable à terme. Certains d’entre vous ont-ils déjà été dans ce cas ? Comment vous avez arbitré ?
Répondre
#2
Pour moi la clé est de viser une MVP de modularité, commencer par isoler les composants critiques, écrire des tests simples et mesurer les gains de clarté et de stabilité avant de tout changer.
Répondre
#3
J'ai été dans le même bateau, j'ai tenté d'ajouter des modules sans plan et j'ai fini par un vrai tas, une étape utile peut être d'ajouter des wrappers pour que les morceaux se parlent sans tout bouleverser.
Répondre
#4
Oh oui, l'envie de tout réécrire proprement, ça rassure, mais à la longue ça peut bouffer le temps. Balance le coût du refactor par rapport au bénéfice sur deux à trois cycles et avance par petits pas.
Répondre
#5
Commence par écrire des tests et pose une frontière claire entre les responsabilités, viser une modularité mesurable sans tout réécrire d'un seul coup.
Répondre
#6
Le problème peut être reformulé, ce n est pas nécessairement une question de réécrire mais de trouver une structure qui te permet d ajouter ou modifier des tâches sans tout casser, c est ça la modularité en action.
Répondre
#7
Et si la vraie question n était pas le modèle de code mais le flux et les dépendances, as tu envisagé d abord ce qui casse les gains, tests, logs et orchestration ?
Répondre


[-]
Réponse rapide
Message
Saisissez votre réponse à ce message ici.

Code de confirmation
Veuillez saisir le texte figurant dans l’image ci-dessous. Ce procédé permet de bloquer les robots.
Code de confirmation
(insensible à la casse)

Aller au forum