Blog

Cos’è ECMAScript 6

ES6 o per esteso ECMAScript 6 è uno standard di linguaggio di scripting realizzato secondo le indicazioni contenute nel documento ECMA-262 fornito da Ecma international (European Computer Manufacturers Association). L’Ecma international è un’associazione fondata nel 1961 che si occupa della standardizzazione nel settore informatico e dei sistemi di comunicazione.

L’ECMAScript è quindi uno standard realizzato con lo scopo di permettere l’interoperabilità di pagine web diverse tra browser diversi. In quanto standard di linguaggio vengono specificate le funzionalità che un linguaggio di scripting dovrebbe avere e come esse dovrebbero essere implementate.

Esempi di linguaggi che sono stati implementati a partire da l’ECMAScript sono il Javascript, l’ActionScript e il Jscript (Microsoft), oramai molto diffusi come linguaggi di scripting per quanto riguarda il lato client dello sviluppo web.
 

ECMAScript e Javascript

Javascript nacque nel 1995 come parte di Netscape Navigator 2.0, sviluppato da Brendan Eich è stato poi presentato ufficialmente all’ECMA International l’anno successivo in modo da essere formalizzato. 
Nacque con il nome di Mochan per diventare poi LiveScript fino a raggiungere infine il nome attuale. Nome attuale che ricorda il linguaggio Java di Sun Microsystems (acquistato nel 2010 da Oracle), e di fatto le loro sintassi risultano essere molto simili. 
Questa somiglianza nacque per poter sfruttare la popolarità di Java benché essi siano linguaggi differenti, Java è un linguaggio compilato mentre Javascript viene interpretato dal browser.
Di fatto Javascript è un linguaggio di programmazione Web lato client esteso successivamente anche lato server, utilizzato per la creazione in siti web e applicazioni web di effetti dinamici. Questi effetti sono triggerati da eventi innescati dall’utente attraverso mouse o tastiera.
 

ECMAScript 6

ES e Javascript nel corso degli anni hanno rilasciato versioni successive del loro prodotto, in particolare analizzando ES6 vediamo come la sesta versione si sia posta i seguenti obiettivi

  • Sviluppo di applicazioni complesse
  • Migliore creazione e gestione di librerie
  • Migliore generazione di codici

ES6, conosciuta anche come ECMAScript 2015 o più semplicemente “Harmony” è uno degli standard più importanti per ciò che è stato l’impiego dei linguaggi da lui derivanti. Data la sua importanza, il suo browser support è cresciuto in fretta partendo con Edge e Safari fino ad arrivare a Chrome, Firefox e Opera e ad oggi risulta essere supportato da ogni browser.
 

Novità di ECMAScript 6

Le novità di questa nuova versione sono numerose e importanti come accennato precedentemente. Troviamo implementazione di nuove keyword, funzioni e proprietà che hanno veramente rivoluzionato il linguaggio.

  • Keyword “let”, permette di modificare il valore di una variabile all’interno di uno spazio di codice delimitato per poi dare nuovamente alla variabile il valore precedente.
  • Keyword “const”, molto simile alla keyword “let” ma il valore assegnato alla variabile non può cambiare all’interno delle parentesi graffe in cui è dichiarato. Esternamente ottiene di nuovo il valore iniziale.
  • Le nuove arrow functions che permettono la dichiarazione di funzioni in modo più efficace risparmiando righe di codice.
  • Introduzione del ciclo for/of da poter utilizzare con Array, Stringhe etc..
  • Keyword “class” per la creazione di classi e costrutti.
  • Nuovi oggetti come i “Promise” che si collegano ai “Producing code” che possono richiedere un po’ di tempo ai “Consuming Code” che devono aspettare il risultato.
  • Il Symbol Type, un Symbol in Javascript è un tipo di dato primitivo e rappresenta un identificatore nascosto a cui nessun altro codice può accedere, spesso viene utilizzato per gli ID.
  • ES6 permette alle funzioni di avere dei parametri con valori di default.
  • La funzione Rest Parameter che tratta un indefinito numero di argomenti come un array.
  • L’Array.find. La funzione find() ritorna il valore del primo elemento dell’array che corrisponde ai criteri indicati.
  • Aggiunta di nuovi metodi per gli oggetti matematici:
  • Math.trunc() ritorna la parte intera del numero.
    Math.sign() ritorna se il numero è positivo negativo o neutro.
    Math.cbrt() ritorna la radice cubica del numero.
    Math.log2() ritorna l’algoritmo in base due dell’argomento.
    Math.log10() ritorna l’algoritmo in base dieci dell’argomento.
  • Aggiunta di nuove costanti matematiche: EPSILON, MIN_SAFE_INTEGER e MAX_SAFE_INTEGER.
  • Number.isInteger() ritorna True se l’argomento è un numero intero.
  • isNaN(), ritorna vero se l’argomento non è un numero.
  • Moduli: Supporto a livello di linguaggio dei moduli per la creazione e gestione di componenti: per creare un modulo è sufficiente scrivere del codice JavaScript in un file ed esportare una o più delle funzionalità implementate. Le funzionalità e gli altri elementi esportati da un modulo JavaScript possono essere importate da un altro modulo tramite la parola chiave import.

Notiamo una migliore gestione della parte matematica e una rinnovata gestione degli array e stringhe, così come l’introduzione di keyword volte a semplificare il lavoro del programmatore e a ridurre le linee di codice.
 

Perché ECMAScript 6

I motivi per utilizzare ES6 sono molti, in primis l’ottimizzazione dei vari browser rendono ES6 incredibilmente veloce, requisito fondamentale per una pagina web. ES6 supporta poi la gestione delle classi e l’introduzione delle arrow functions semplifica molti aspetti della programmazione. L’aggiunta di template nelle stringhe semplifica la lettura del codice e con ES6 è possibile risolvere gli stessi problemi che venivano risolti con CoffeeScript ma in modo migliore. CoffeeScript è un linguaggio di programmazione nato con l’intento di ovviare ai precedenti problemi di Javascript.
La lista potrebbe essere ancora più lunga, ma il messaggio principale è questo: ES6 non solo ha saputo correggere gli errori del passato ma è riuscito a dare nuovi strumenti e a semplificare la vita degli sviluppatori, e per questo ancora oggi, ad anni di distanza, viene preso come punto di riferimento.

Articoli correlati

Il linguaggio HTML (Hypertext Markup Language) è uno dei più conosciuti e diffusi: lo si trova infatti praticamente in tutte le pagine web esistenti. È una scelta popolare tra i principianti che si…
Essere uno sviluppatore web vuol dire imparare più linguaggi di programmazione per poter creare diversi tipi di applicazioni.  Per ogni applicazione, la maggior parte delle volte, …
Un buon programmatore, si sa, necessita di un ampio bagaglio di conoscenze per potersi districare tra le difficoltà che questo mestiere comporta. Oggi le richieste sul mercato sono molteplic…
UI UX design: un settore dalle mille sfaccettature Il design dell’esperienza utente (UX) e dell’interfaccia utente (UI) costituisce il fondamento su cui si costruiscono le interazioni digitali coinvo…
Nel contesto dello sviluppo web, il backend riveste un ruolo cruciale nell’assicurare il corretto funzionamento di un sito. Il backend, si occupa delle operazioni non visibili agli utenti finali, gest…
Il Data Analyst è una figura professionale sempre più richiesta nel mondo del lavoro, grazie alla sua capacità di analizzare e interpretare grandi quantità di dati per supportare le decisioni azie…

Seguici su Facebook

Scopri di più sul corso Hackademy

Inizia la tua nuova carriera nel mondo digital e tech.

Contattaci senza impegno per informazioni sul corso

Scopriamo insieme se i nostri corsi fanno per te. Compila il form e aspetta la chiamata di uno dei nostri consulenti.

Contattaci senza impegno per informazioni sul corso

Pagamento rateale

Valore della rata: A PARTIRE DA 112 €/mese.

Esempio di finanziamento  

Importo finanziato: € 2440 in 24 rate da € 112 – TAN fisso 9,37% TAEG 12,57% – importo totale del credito € 2788,68.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/07/2023 al 31/12/2023.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.

Pagamento rateale

Valore della rata: A PARTIRE DA 183 €/mese.

Esempio di finanziamento 

Importo finanziato: € 3990 in 24 rate da € 183 – TAN fisso 9,37% TAEG 12,57% – importo totale del credito € 4496,56.

Il costo totale del credito comprende: interessi calcolati al TAN indicato, oneri fiscali (imposta di bollo sul contratto 16,00 euro*) addebitati sulla prima rata, costo mensile di gestione pratica € 3,90, spesa di istruttoria € 0,00, spesa per invio rendicontazione periodica cartacea € 0,98 (o spesa per invio rendicontazione periodica cartacea € 0,00), imposta di bollo su rendicontazione periodica € 0,00. Modalità di rimborso obbligatoria: addebito diretto su c/c. La scadenza delle rate è determinata dal giorno della liquidazione del contratto; la data di scadenza delle rate è prevista il giorno 15 del mese. L’importo di ciascuna rata comprende una quota di capitale crescente e interessi decrescente secondo un piano di ammortamento “alla francese”. Offerta valida dal 01/07/2023 al 31/12/2023.

Messaggio pubblicitario con finalità promozionale. Per le informazioni precontrattuali richiedere sul punto vendita il documento “Informazioni europee di base sul credito ai consumatori” (SECCI) e copia del testo contrattuale. Salvo approvazione di Sella Personal Credit S.p.A. Aulab S.r.l. opera quale intermediario del credito NON in esclusiva.

* In fase di richiesta del finanziamento verrà proposta la facoltà di selezionare, in alternativa all’imposta di bollo sul contratto di 16,00 euro, l’imposta sostitutiva, pari allo 0,25% dell’importo finanziato.