Quali framework JavaScript dovresti imparare?

Vorrei prima definire ciò che penso sia un framework di codifica perché la parola è discutibile. Penso che un framework sia una libreria che definisce le strutture su ogni aspetto o strato che può rendere più semplice il compito di creare applicazioni. Per livelli intendo cose come database, modelli, controller, viste, presentatori, reti, ecc.

I framework provano a risolvere la maggior parte dei problemi grandi e noti che di solito si incontrano con le loro applicazioni. Hanno decisioni di progettazione integrate di cui non devi preoccuparti. Hanno anche linee guida elaborate con cura.

I buoni framework hanno anche impostazioni predefinite intelligenti e seguono la convenzione sul concetto di configurazione. Il leader di questo è il framework Ruby on Rails, che è uno dei miei preferiti. Nella terra JavaScript, i principali framework JavaScript disponibili sono Angular ed Ember.

Ora che abbiamo chiarito questo punto, lasciami rispondere alla domanda nel titolo: quali framework JavaScript dovresti imparare nel 2018?

La mia risposta: nessuna.

Lasciami spiegare perché.

A meno che tu non abbia un lavoro che richiede di utilizzare un framework, non apprendere framework solo per motivi di apprendimento. Sto parlando di imparare a usare un framework. Questa è una conoscenza che scadrà rapidamente.

D'altra parte, dovresti imparare come funzionano i framework. Questa è una conoscenza molto preziosa. Se la tua motivazione ad apprendere un framework è quella di ottenere un buon lavoro, sapere come funzionano i framework è molto più impressionante che sapere come usarli.

Scopri come usare un framework solo quando ne hai davvero bisogno.

Penso che ci siano competenze molto più importanti per imparare a diventare uno sviluppatore più richiesto:

  • Scopri tutto ciò che puoi sul linguaggio JavaScript stesso, le sue parti difettose e le parti buone e tutte le funzionalità moderne che ha recentemente acquisito. Scopri come creare e utilizzare le varie strutture di dati in JavaScript.
  • Scopri i runtime JavaScript come Nodo e Browser e scopri come sono single thread. Scopri le loro API e limitazioni. Informazioni sul ciclo degli eventi. Scopri le pile di chiamate della VM. Mettiti comodo con DevTools dei browser.
  • Scopri come condividere il codice tra client e server e precaricare i dati iniziali. Scopri come ridurre al minimo il caricamento e l'analisi di JavaScript nei browser. Scopri come caricare JavaScript su richiesta.
  • Scopri i meriti della programmazione funzionale e usa i suoi concetti dove puoi. Scopri come essere dichiarativo anziché imperativo quando puoi.
  • Scopri le piccole librerie JavaScript che fanno una cosa e la fanno bene. Scegli le librerie con l'API più piccola e non concentrarti sulle API ma piuttosto su ciò che queste librerie ti consentono di fare.
  • Scopri come creare API di dati scalabili (dai un'occhiata a GraphQL).
  • Scopri la potenza del CSS e come usarlo per ridurre al minimo il codice JavaScript delle tue applicazioni. Scopri i nuovi layout Flexbox e Grid. Informazioni sulla progettazione UI-responsive.
  • Scopri come aggiungere tipi statici a JavaScript con TypeScript (o Flow) e scopri dove concentrarti sui tipi e sui test.

Grazie per aver letto.