La duplicazione del codice costa meno di un'astrazione errata

La maggior parte degli sviluppatori impara presto il principio DRY. Do Not Repeat Yourself.

Questa regola ha senso. Previene gli errori e fa risparmiare tempo.

Ma molti sviluppatori seguono questa regola in modo troppo rigido. Cercano di fondere tutto in un'unica funzione o classe. Questo porta all'over-engineering.

Quando forzi due frammenti di logica differenti in un'unica astrazione, crei dei problemi. Aggiungi complessità. Rendi il codice difficile da leggere.

Un'astrazione errata costa più di una piccola duplicazione.

Se duplichi il codice, sai esattamente dove risiede la logica. Se hai bisogno di cambiare una parte, la cambi lì.

Se usi una cattiva astrazione, devi cambiare tutto ciò che vi è collegato. Rischi di rompere funzionalità che non hanno nulla a che fare con il compito che stai svolgendo.

Segui queste regole per stare al sicuro:

  • Scrivi codice per il compito specifico.
  • Aspetta che un pattern emerga per tre volte prima di creare un'astrazione.
  • Dai la priorità alla leggibilità rispetto al risparmio di poche righe di codice.
  • Accetta che una certa dose di duplicazione sia salutare.

Smetti di cercare di rendere perfetta ogni riga di codice. Concentrati sul rendere il tuo codice facile da modificare.

Fonte: https://dev.to/kelvin_kariuki_20f4bec616/developer-take-on-code-duplication-is-far-cheaper-than-the-wrong-abstraction-3g0b