Framework: utili o limitanti?
Negli ultimi anni, il mercato dello sviluppo dei software ha visto crescere notevolmente il numero di operatori che gestiscono la programmazione attraverso l’utilizzo dei framework. Quando li si nomina, si inquadrano degli strumenti che consentono prima di tutto di ottimizzare tempo, facilitando di conseguenza il lavoro di chi si occupa di sviluppo e dando modo di non cominciare sempre da zero nella scrittura di nuovi programmi.
Fungono infatti da interfaccia tra le piattaforme e i linguaggi di programmazione, consentendo anche agli sviluppatori alle prime armi di sfruttare funzionalità di livello avanzato. Non tutti vedono questo trend di buon occhio. Secondo diversi esperti di sviluppo, sta infatti aprendo la strada a una generazione di professionisti pigri.
Questi ultimi, invece che affrontare direttamente le problematiche, si starebbero infatti abituando a sostituire i linguaggi che non sanno padroneggiare con il framework in voga in un determinato momento. Secondo i detrattori di questo modo di approcciarsi allo sviluppo, le nuove generazioni di programmatori difetterebbero in inventiva in quanto non hanno mai studiato i fondamenti della programmazione né approfondito le caratteristiche dei vari linguaggi.
Le osservazioni in questione hanno in parte ha senso se si considera che, fino a qualche anno fa, l’unico modo per iniziare a muoversi nel mondo della programmazione era lo studio dalla prima all’ultima pagina di manuali di HTML, CSS e JavaScript, con successiva applicazione di quanto appreso tramite esercizi sugli editor di testo. Secondo gli sviluppatori della vecchia scuola, la partenza dalle basi consentirebbe lo sviluppo di un’elasticità mentale impensabile utilizzando unicamente i framework. Inoltre, i concetti fondamentali di informatica e le tecniche di programmazione risultano per molti decisamente più facili da imparare.
Si consiglia spesso di evitare i framework anche perché aumentano la complessità e il grado di dipendenza del progetto. Secondo alcune voci del mondo dello sviluppo software, lasciarsi prendere la mano può voler dire arrivare alla fine di un lavoro dopo averne utilizzati anche 20 diversi e aver fatto ricorso a 5/6 linguaggi di programmazione.
Il loro utilizzo è quindi raccomandato in casi davvero eccezionali, come per esempio progetti legati all’elaborazione del suono e delle immagini, ma anche all’apprendimento automatico. In situazioni del genere, infatti, sarebbero necessari molti mesi per scrivere il codice necessario al completamento del lavoro.
Cosa dire dei database?
La critica che ha coinvolto l’utilizzo dei framework riguarda anche il mondo dei database. Sono infatti numerosi i team di sviluppo che evitano di ricorrere ai database relazionali nei loro progetti, anche quando la soluzione in questione risulterebbe l’alternativa più comoda.
Pure in questo caso i detrattori parlano dell’incapacità sempre più diffusa di apprendere skill necessarie alla comprensione e alla risoluzione dei problemi che emergono nel corso dei processi di sviluppo. Il rischio, a detta di chi si è affacciato al mondo dello sviluppo quando non si parlava ancora di framework, è quello di affidarsi a servizi di terze parti sì semplici, ma anche decisamente meno performanti.
Perché i giovani sviluppatori dovrebbero scrivere i propri framework
Secondo le leve old stlye del mondo della programmazione, i giovani sviluppatori devono imparare a scrivere personalmente framework perché, in tal modo, è possibile sviluppare capacità tecniche tali da rendere più facile il rinvenimento di errori od omissioni in altre “librerie“ di codice. Inoltre, scrivendo un proprio framework si è costretti a prendere decisioni che altrimenti sarebbero state date per scontate e che si riferiscono nello specifico all’architettura e al codice.
