Le classi in JavaScript

In questo video parleremo di un nuovo costrutto sintattico introdotto dall'ECMAScript 6: le classi.
Le classi di JavaScript sono concettualmente diverse dalle classi che trovate in altri linguaggi di programmazione (es. Java), in quanto sono solo una diversa maniera per scrivere una funzione costruttore (constructor function).
Il loro pregio è di semplificare la sintassi per creare un costruttore, in inglese si dice che sono solo "syntactic sugar" e che nulla aggiungono alle funzionalità e potenzialità di una classica funzione costruttrice.
In questo video vedremo come usare la nuova keyword introdotta dall'ES6 class e vedremo come convertire il costruttore, che abbiamo creato nel video precedente, in una classe, eliminando quindi la keyword "function".
Infine, constateremo che questa nuova classe farà le stesse identiche cose della "old-style" funzione costruttrice.

Trascrizione: (click per espandere)
salve a tutti in questo video parlerò
delle classi di javascript allora
intanto le classi sono state introdotte
con l'ecma script 6 e quindi sono una
cosa nuova di javascript e se voi siete
già un programmatore di altri linguaggi
ad esempio di java dovete mettere a
capire che le classi di javascript non
sono come le classi di java
la classe di javascript è praticamente è
una maniera diversa di scrivere una
funzione costruttore come quelle che
abbiamo visto nel video precedente
e infatti il parto proprio da quello che
abbiamo scritto nel video precedente
abbiamo una funzione costruttore eccola
qui e poi abbiamo fatto l'esempio di
creare un oggetto della mia funzione
costruttore allora con l'ecma script 6
è stato introdotto una nuova maniera
per creare la stessa identica cosa e si
chiama classe andiamo a vedere allora
intanto commento questo è commento anche
questo per il momento e ci mettiamo
allora si usa la keyword class
ricordo che usare una funzione
costruttore come quella del video
precedente e usare questa nuova
tipologia di sintassi si ottiene lo
stesso identico risultato allora
chiamiamo la classe auto parentesi
graffe constructor parentesi tonde che
possono ricevere degli argomenti allora
mettiamo marca e colore parentesi graffe
e qui vado a dichiarare le mie proprietà
marca che eredita prende il valore
l'argomento marca e this colore che
prende il valore da colore
ok allora dentro al costruttore si
dichiarano le proprietà fuori dal
costruttore si dichiarano i metodi
non si usano punti e virgole qui come
era
nell'esempio precedente sì quindi adesso
io posso andare a dichiarare il metodo e
il mio metodo abbiamo detto che era
descrizione non si usa la this in
questo caso descrizione parentesi tonde
parentesi graffe e si mette dentro
quello che deve fare il mio metodo il
metodo è sempre la funzione una funzione
praticamente per esempio
facciamo così eccolo qui questa
rappresentazione qui è la stessa
identica cosa che che abbiamo qui
scritta con una sintassi diversa una
sintassi introdotto dall'ecma script 6
ripeto allora si usa la keyword class si
usa la keyword constructor e al suo
interno non vanno dichiarate
le proprietà e poi per i vari metodi si
usa descrizione si usa si
dichiara una funzione praticamente
fuori dal costruttore ecco qua
semplicissimo se adesso io vado a
decommentare questo qui vediamo il
risultato finale
eccolo qui volkswagen blu volkswagen blu
ecco come vedete il risultato non cambia
è la stessa identica cosa se io commento
questo ed è commento questo ho lo stesso
identico risultato in maniera diversa a
voi sta la scelta di scegliere una
sintassi che preferite e usare quella
non vi cambia niente
come abbiamo detto le due cose sono
uguali il risultato non cambia cambia
solo la sintassi con questo è tutto ci
sentiamo la prossima ciao
File del video: