Ci accorgiamo dei benefici del codice OO solo quando dobbiamo effettuare il redesign di un applicativo interamente procedurale. In questo caso tutti i dibattiti, le discussioni, i punti di vista, le religioni, le ideologie cadono di fronte all’evidenza: è un’odissea. Vediamo perché.
Innanzitutto, il codice JavaScript che regola il funzionamento dell’applicativo è completamente privo di struttura.
Quando va bene vengono usate delle funzioni, di solito definite in un file mastodontico con n-mila righe. Quando va male non si usano neppure le funzioni ma tutto il codice viene iniettato in un unico evento.
In questo scenario, ovviamente, manca completamente la relazione fondamentale fra logica e struttura. Cià porta ad avere un profluvio di codice laddove in un contesto OOP la separazione permette di limitare questa proliferazione.
Qui la struttura è assente: non c’è nessun rapporto o relazione tra le parti. Mancando la struttura lo sviluppatore è costretto ad analizzare ogni blocco cercando di capire il cosa, il come ed il perché di ciascuna routine.
A livello di produttività si tratta di un massacro: su applicativi complessi il tempo richiesto per il redesign è notevole. E tutto ciò è inaccettabile.
Il problema è che il cliente non sa valutare i pro ed i contro: procedurale od OOP poco importa, basta che funzioni. Salvo poi scoprire cosa succede nel caso specifico dei redesign.
Ma questo lo sa solo lo sviluppatore.