Cos’è JavaScript?

Cos’è JavaScript – in breve: JavaScript, anche detto JS, è un linguaggio interpretato di alto livello, che fa parte dei linguaggi di scripting. È famoso in tutto il mondo per essere una delle tecnologie più importanti del Web, assieme a HTML e CSS. È semplice da imparare e da applicare e soprattutto, con le dovute accortezze, multipiattaforma.

Il linguaggio del Web

Ci sono diversi linguaggi di programmazione che potrebbero essere definiti “linguaggi del Web”: Java EE, PHP, ASP/C# e Python. Tuttavia, sono utilizzati lato server: sono in grado di generare una pagina in modo dinamico in base a determinati input e possono gestire dati operando in sincronia a molti DBMS (DataBase Management System).

A creare l’effettiva interazione con l’utente finale, invece, è proprio JavaScript, che viene eseguito dal client (dal browser). È vero che ogni browser ne ha una propria implementazione – e che le funzionalità possono variare da uno all’altro; ciononostante, è sostanzialmente multipiattaforma, poiché la maggior parte delle attività non varia.

Come funziona?

Integrare JavaScript in un sito è veramente semplice: è sufficiente usare i tag HTML , tra i quali va posto il codice da eseguire. Proprio come altri linguaggi di scripting, quindi, non richiede la fase di compilazione da parte del programmatore: sarà l’interprete a occuparsi della sua esecuzione.

Per rendere il codice riutilizzabile – e più facile da mantenere – è anche possibile creare un file con estensione js e importarlo. Ma si tratta di decisioni di progettazione prese dagli sviluppatori.

Inoltre, grazie alla sua possibilità di integrarsi agli elementi della struttura HTML e di interagire con essi, diventa semplice realizzare GUI elaborate che, alla pressione di un pulsante o, più in generale, all’accadere di un evento, eseguono delle operazioni.

Infine, ma non per importanza, è dotato di tipi dinamici e non fortemente tipizzati e supporta la programmazione multi-paradigma.

Cosa può fare?

Sostanzialmente, tutte le interazioni con le pagine Web che hai navigando in Internet sono dovute a JavaScript. È un linguaggio dalle grandi capacità, che permette – a chi lo conosce a fondo – di realizzare interfacce utente accattivanti e di implementare funzionalità avanzate.

Ti propongo alcuni esempi, dai più “banali” ai più “complessi”:

  • Gestione (grafica) di un menu (barra di navigazione): al passaggio del mouse può mostrare dei sottomenu, altrimenti non visibili.
  • Gestione dei pulsanti: alla pressione di un pulsante può eseguire una funzione personalizzata, la quale può svolgere le più disparate azioni.
  • Generazione dinamica di pagine: grazie alla tecnologia AJAX (Asynchronous JavaScript and XML) può richiedere in tempo reale dei dati ad un server, senza che l’utente debba lasciare la pagina già caricata, per poi elaborarli e inserirli nell’interfaccia già presente.
  • Grande versatilità: esistono moltissime librerie e framework basati su JavaScript. jQuery e Angular sono solo due delle più famose; permettono di scrivere codice più conciso e allo stesso tempo in grado di eseguire un numero maggiore di funzioni.
  • Disponibilità lato server: grazie al porting Node.js è possibile utilizzare JavaScript per realizzare software eseguito lato server: insomma, con un unico linguaggio si può realizzare un intero sito Web!

Questi sono solo alcuni esempi di ciò che si può fare con questo potente linguaggio di programmazione, ma sappi che si può sfruttare per tanti altri scopi.

Librerie e framework

Come ti ho accennato, ci sono molti framework e librerie basati su JS. In alcuni casi sembra di trovarsi dinnanzi a nuovi linguaggi, come con Angular e jQuery: hanno sintassi lievemente differenti e logiche diverse, ma la base è sempre la stessa.

Alcune delle librerie più famose sono:

  • Angualr
  • Ember.js
  • jQuery
  • Marko
  • Meteor.js
  • MithrilJS
  • ReactJS
  • Vue.js

Conclusione

In definitiva, hai scoperto la versatilità di JavaScript. Questo linguaggio di scripting si adatta a numerosi compiti: dalla realizzazione di interfacce grafiche interattive a veri e propri software che gestiscono dati, magari con accesso a DataBase. Grazie all’utilizzo di librerie JS, inoltre, è possibile aggiungere un gran numero di funzioni con semplicità. Tutte queste caratteristiche, quindi, ne hanno fatto uno strumento estremamente diffuso e (quasi) completamente multipiattaforma. Ora, quindi, quando visiterai un sito Web ne capirai meglio il funzionamento. Sei pronto ad esplorare?