Sei sulla pagina 1di 4

JavaScript Essentials 1 (JSE)

Modulo 1

Introduzione a JavaScript e alla programmazione informatica

Dopo aver completato il Modulo 1, lo studente:

comprendere i concetti fondamentali della programmazione, quali: l'interpretazione e l'interprete, la


compilazione e il compilatore, la programmazione lato client vs. lato server;

avere conoscenze di base su come impostare e utilizzare l'ambiente di programmazione di base (online o
locale);

acquisire competenze che consentono loro di eseguire il loro primo programma JavaScript lato client (sia
come elemento incorporato nella pagina HTML che direttamente nella console del browser).

JavaScript Essentials 1 (JSE):

Modulo 1

Sezione 1

A proposito di JavaScript

Argomenti in questa sezione:

Come comunicare con il computer?

Cos'è JS?

JS – Vantaggi e limitazioni

Dove viene utilizzato JS oggi?

1
introduzione

Quindi vuoi imparare a programmare in JavaScript? È fantastico!

Questo corso sarà un viaggio piuttosto lungo, ma se arriverai alla fine, sarai in grado di leggere,
comprendere e, naturalmente, scrivere applicazioni e programmi JavaScript. Queste nuove capacità
possono aiutarti nel tuo attuale lavoro o consentirti di raggiungere nuove opportunità di carriera in un
mercato IT in costante crescita. Iniziamo questa avventura senza ulteriori indugi e scopriamo cos'è
JavaScript.

Come comunicare con il computer

Cominciamo con qualcosa di ovvio: i computer sono ovunque. Quasi sicuramente stai leggendo questo
corso su un computer; il tuo telefono è un computer; troverai computer nei televisori e altri
elettrodomestici, come il tuo aspirapolvere automatico, che utilizza il suo computer e numerosi sensori
nella sua missione senza fine di sradicare la polvere dalla tua vita. Siamo circondati da computer. I
computer sono utilizzati nella scienza, nella medicina, nel settore bancario e negli affari. Sospettiamo che al
giorno d'oggi sarebbe difficile trovare un'area della vita in cui i computer non partecipino attivamente.

Utilizziamo i computer principalmente perché sono in grado di svolgere determinate attività in modo
incomparabilmente più veloce e preciso delle persone. Tuttavia, i computer non possono indovinare che
tipo di attività abbiamo in mente o come aiutarci a eseguirle. Dobbiamo dirglielo. Come? È meglio farlo in
modo simile a quando si passano informazioni ad altre persone, in altre parole, utilizzando un linguaggio
comprensibile da entrambe le parti. Usando un tale linguaggio, scriviamo un programma, una soluzione
formalizzata al nostro problema, che può essere eseguito dal computer.

Sfortunatamente, un linguaggio che è direttamente comprensibile da un computer sarà assolutamente


illeggibile per un normale essere umano. Sarebbe una sequenza di istruzioni bizzarre, scritte in forma
numerica, riferite a componenti di computer di cui non sapevamo nemmeno l'esistenza (e francamente non
dobbiamo necessariamente saperlo). Questa modalità di comunicazione, che risale agli albori
dell'informatica, è oggi usata molto raramente e solo in situazioni molto specifiche.

Quindi, per aiutare nella comunicazione con il computer, sono stati inventati linguaggi di programmazione
che sono in qualche modo simili ai linguaggi naturali (cioè quelli usati per la comunicazione tra le persone).
Esistono migliaia di linguaggi di programmazione e differiscono per scopo (oltre ai linguaggi generici, ce ne
sono molti specializzati, ad esempio linguaggi progettati solo per calcoli statistici), livello di astrazione (in
parole povere: maggiore è il livello del linguaggio , meno abbiamo bisogno di sapere sull'hardware su cui
viene eseguito il programma), facilità d'uso, efficacia dei programmi in essi scritti, ecc.

2
JavaScript come linguaggio interpretato

JavaScript è un tipico linguaggio interpretato. Se eseguiamo in un browser web un codice scritto in


JavaScript, come sta accadendo, ad esempio dopo aver caricato la pagina che stiamo leggendo (sì, sì, ci
sono elementi scritti in JavaScript anche in questa pagina), l'interprete sarà il Motore JavaScript integrato
nel browser. Questo non è l'unico modo per eseguire codice JavaScript.

Forse hai sentito parlare di node.js. È anche un interprete, ma è installato indipendentemente dai browser
come ambiente nel sistema operativo del computer (può essere macOS, Windows o Linux). L'uso di node.js
ti consente di scrivere programmi in JavaScript che, ad esempio, trasformeranno il tuo computer in un
server.

All'inizio di questo paragrafo abbiamo semplificato un po' le cose. JavaScript è un linguaggio interpretato,
su questo non ci sono dubbi. E infatti, eseguire un programma scritto in JavaScript sembra come se
stessimo eseguendo il nostro codice sorgente (cioè il codice che abbiamo scritto) passo dopo passo.
Tuttavia, potresti imbatterti in informazioni su questa lingua, e più specificamente su interpreti particolari,
che sono leggermente diverse.

La maggior parte dei moderni motori JavaScript utilizza la tecnica Just In Time Compilation (JIT
Compilation). Questa tecnica consiste nella compilazione di frammenti di codice durante l'esecuzione del
programma (più di una singola istruzione) e consente di aumentarne le prestazioni. Tuttavia, dal punto di
vista dell'utente, un tale cambiamento è praticamente impercettibile: sembra ancora che solo l'interprete
stia eseguendo il codice sorgente, istruzione per istruzione.

Indipendentemente dalla lingua scelta, alcune cose rimangono le stesse durante la scrittura del
programma. Innanzitutto, una fase importante, e probabilmente la più difficile, di questo processo è
definire correttamente il problema che vogliamo risolvere. Solo allora proviamo a trovare la soluzione
ottimale, che finalmente presenteremo sotto forma di un programma scritto nella lingua scelta.

Quindi, prima di iniziare a spiegare qualcosa al computer, in altre parole, a scrivere un programma, devi
capire esattamente cosa vuoi ottenere e come vuoi ottenerlo. In secondo luogo, la soluzione che
proponiamo e che scriviamo sotto forma di programma deve essere inequivocabile al 100%: il computer
non può indovinare nulla.

Un semplice esempio di un campo leggermente diverso: ad un certo punto della tua vita, probabilmente ti è
capitato di acquistare un mobile che richiedeva il montaggio. L'assemblaggio è un problema di cui tu,
l'acquirente, sei stato gravato. Per far fronte a questo compito, ottieni una serie di istruzioni che ti guidano
attraverso l'intero processo. A questo punto stai fungendo da interprete, utilizzando un programma che ti
consentirà di completare l'attività. Il successo della tua missione dipende dalla qualità di queste istruzioni,

3
siano esse precise e non ambigue, e non provengano da un altro mobile. Alla fine, potrebbe risultare che
non hai costruito i mobili dei tuoi sogni, ma una costruzione surreale di un'altra dimensione.

Affinché le istruzioni siano valide, qualcuno che le sviluppa deve sapere esattamente cosa dovrebbe
illustrare, in quale ordine dovrebbero essere eseguite determinate azioni, in quali fasi è più facile
confondere qualcosa e così via. E, naturalmente, devono sapere quale effetto si vuole ottenere alla fine.

Potrebbero piacerti anche