Evoluzione di JavaScript. Circa 10 anni fa, Jeff Atwood (il fondatore di StackOverflow) ha affermato che JavaScript sarà il futuro e ha coniato la “Legge Atwood” che afferma che qualsiasi applicazione che può essere scritta in JavaScript alla fine sarà scritta in JavaScript. Avanti veloce fino ad oggi, 10 anni dopo, se lo guardi suona più vero che mai. JavaScript sta continuando a ottenere sempre più adozione.
Annuncio di JS: inizia l’ Evoluzione di JavaScript
JavaScript è stato inizialmente creato da Brendan Eich di NetScape ed è stato annunciato per la prima volta in un comunicato stampa da Netscape nel 1995. Ha una bizzarra storia sul suo nome.
Inizialmente è stato chiamato Mocha dal creatore, che è stato successivamente rinominato in LiveScript. Nel 1996, circa un anno dopo il rilascio, NetScape decise di rinominarlo in JavaScript con la speranza di capitalizzare sulla comunità Java (sebbene JavaScript non avesse alcuna relazione con Java) e rilasciò Netscape 2.0 con il supporto ufficiale di JavaScript.
ES1, ES2 e ES3
Nel 1996, Netscape decise di sottoporlo all’ECMA International con la speranza di standardizzarlo. La prima edizione della specifica standard è stata rilasciata nel 1997 e il linguaggio è stato standardizzato. Dopo il rilascio iniziale, si è continuato a lavorare su ECMAScript e in pochissimo tempo sono state rilasciate altre due versioni ECMAScript 2 nel 1998 e ECMAScript 3 nel 1999.
Decennio del silenzio e ES4
Dopo il rilascio di ES3 nel 1999, ci fu un completo silenzio per un decennio e non furono apportate modifiche allo standard ufficiale. C’è stato del lavoro sulla quarta edizione nei primi giorni; alcune delle funzionalità che venivano discusse includevano classi, moduli, tipizzazione statica, destrutturazione ecc. Si prevedeva di rilasciarlo entro il 2008, ma è stato abbandonato a causa di differenze politiche riguardanti la complessità del linguaggio. Tuttavia, i fornitori hanno continuato a introdurre le estensioni della lingua e gli sviluppatori sono rimasti a grattarsi la testa, aggiungendo polyfill per combattere i problemi di compatibilità tra diversi browser.
Dal silenzio a ES5 (prosegue l’Evoluzione di JavaScript)
Google, Microsoft, Yahoo e altri contestatori di ES4 si sono riuniti e hanno deciso di lavorare su un aggiornamento meno ambizioso di ES3 chiamato provvisoriamente ES3.1. Ma i team stavano ancora litigando su cosa includere da ES4 e cosa no. Infine, nel 2009 ES5 è stato rilasciato concentrandosi principalmente sulla risoluzione dei problemi di compatibilità e sicurezza, ecc. consapevole degli standard “moderni”.
Rilascio di ES6 — ECMAScript 2015
Dopo alcuni anni dal rilascio di ES5, le cose hanno iniziato a cambiare, TC39 (il comitato di ECMA international responsabile della standardizzazione di ECMAScript) ha continuato a lavorare sulla versione successiva di ECMAScript (ES6) che originariamente si chiamava ES Harmony, prima di essere finalmente rilasciata con il nome ES2015. ES2015 aggiunge funzionalità significative e zucchero sintattico per consentire la scrittura di applicazioni complesse. Alcune delle funzionalità che ES6 offre includono Classi, Moduli, Frecce, Valori letterali oggetto migliorati, Stringhe modello, Destrutturazione, Valori parametri predefiniti + riposo + diffusione, Let e Const, Iteratori + for..of, Generatori, Mappe + Set , proxy, simboli, promesse, matematica + numero + stringa + matrice + oggetto API ecc
Il supporto del browser per ES6 è ancora scarso, ma tutto ciò che ES6 offre è ancora disponibile per gli sviluppatori trasferendo il codice ES6 in ES5. Con il rilascio della sesta versione di ECMAScript, TC39 ha deciso di passare al modello annuale di rilascio degli aggiornamenti a ECMAScript in modo da assicurarsi che le nuove funzionalità vengano aggiunte non appena vengono approvate e non dobbiamo attendere la specifica completa per essere redatto e approvato. La sesta versione di ECMAScript è stata rinominata ECMAScript 2015 o ES2015 prima del rilascio nel giugno 2015. E le versioni successive di ECMAScript sono state decise per la pubblicazione nel giugno di ogni anno.
Rilascio di ES7 — ECMAScript 2016
Nel giugno 2016 è stata rilasciata la settima versione di ECMAScript. Poiché ECMAScript è stato spostato su un modello di rilascio annuale, ECMAScript 2016 (ES2016) in confronto non aveva molto da offrire.
Rilascio di ES8 — ECMAScript 2017
L’ottava versione di ECMAScript è stata rilasciata a giugno 2017. Il momento clou di ES8 è stata l’aggiunta di funzioni asincrone. Ecco l’elenco delle nuove funzionalità di ES8 con l’Evoluzione di JavaScript:
Object.values()andObject.entries()- String padding i.e.
String.prototype.padEnd()andString.prototype.padStart() Object.getOwnPropertyDescriptors- Trailing commas in function parameter lists and calls
- Async functions
Cos’è ESNext allora?
ESNext è un nome dinamico che si riferisce a qualunque sia la versione corrente di ECMAScript in un determinato momento. Ad esempio, al momento della stesura di questo articolo ES2017 o ES8 è ESNext.
Cosa riserva il futuro?
Dal rilascio di ES6, TC39 ha semplificato il proprio processo. TC39 ora opera attraverso un’organizzazione Github e ci sono diverse proposte per nuove funzionalità o sintassi da aggiungere alle prossime versioni di ECMAScript. Chiunque può andare avanti e presentare una proposta con conseguente aumento della partecipazione da parte della comunità. Ogni proposta passa attraverso quattro fasi di maturità prima di entrare nel capitolato d’oneri.
(fonte)
Importantissimi oggi sono i numerosi framework JavaScript che sono ormai diffusi ed utilizzati da tutte le community di sviluppatori. Questi ultimi si dividono fra chi lavora e preferisce usare Javascript “puro” e chi invece preferisce utilizzare uno dei framework JS.
Innovaformazione, scuola informatica specialistica promuove la cultura dello sviluppo web ed organizza corsi di formazione per sviluppatori.
In particolare nell’ambito dell’ Evoluzione di JavaScript troviamo i seguenti corsi per aziende:
INFO: info@innovaformazione.net – tel. 3471012275 (Dario Carrassi)
Vuoi essere ricontattato? Lasciaci il tuo numero telefonico e la tua email, ti richiameremo nelle 24h:
Articoli correlati
Cosa è ZK framework
Guida SAP Clean ABAP
Lavoro Contabilità Bilancio Roma
Sviluppo API REST con ASP.NET Core
Come integrare l’AI negli ATM bancomat
