Refactor legacy: prima gioca a Rambo
Metti la bandana prima dell'IDE
Ti trovi davanti un legacy carico come un camion sovietico. La tentazione è capire tutto prima di toccare. Pessima idea. Attiva prima la modalità Rambo:
- Butta ciò che ingombra: feature morte, flag che nessuno legge, librerie dimenticate. Se nessuno le usa, è zavorra.
- Cancella gli helper esoterici: un util usato una volta per un test manuale nel 2018? Fuori.
- Taglia le route zombie: un endpoint senza metriche né log è sospetto. Chiudilo e ascolta chi urla.
Nel peggiore dei casi Git ti restituisce ciò che hai buttato. L'archeologia può aspettare.
Pulisci prima, capisci dopo
Più piccolo è il perimetro, più il cervello respira. Riducendo lo scope vedi subito cosa è davvero usato:
- Traccia le chiamate:
rgodepcruiseti dicono in fretta se una dipendenza serve ancora. Zero hit? Disinstalla. - Controlla eventi e job: una coda che nessuno consuma o un cron muto sono allarmi. Come rifattorizzi un fantasma?
- Osserva il runtime: avvia l'app senza i moduli rimossi. Vedrai errori reali, non immaginari.
Librerie obsolete: tenere o riscrivere?
Una dipendenza antidiluviana per una sola funzione? Non hai firmato per trascinare moment.js al 2025 solo per formattare una Date. Chiediti:
- Quante chiamate ci sono? Tre usi? Ricodifica la funzione in dieci righe e guadagni una dipendenza in meno.
- Quanto costa l'upgrade? Se la lib impone sei major, è probabilmente più rapido sostituirla.
- Esiste un'alternativa nativa? Quasi sempre sì. Le API standard coprono l'80% dei bisogni; il resto si scrive pulito.
Più tagli, più il resto diventa leggibile. E se davvero hai cancellato un pezzo vitale, Git lo resuscita in meno di trenta secondi.
Prima Rambo, poi architetto
Questa fase "a braccio" non è la refactor finale. È preparazione del terreno:
- Chiarisci il perimetro: meno grasso, più essenziale.
- Riduci i rischi: meno dipendenze, meno vettori di bug.
- Acceleri il seguito: la vera ricostruzione (test, design, decoupling) diventa fattibile.
Quindi sì, metti la fascia rossa e pulisci a raffica. Solo dopo tiri fuori i blueprint, disegni un'architettura e codifichi da adulto. Git tiene i ricordi; tu tieni la sanità mentale.