Vai al contenuto

Videocorso Erlang e OTP CGFA

Da zero a costruire sistemi concorrenti che non si fermano mai

  • Partenza: Da zero
  • 14 ore con gli esercizi
  • 10 lezioni in 3 livelli
  • 2 lezioni gratis

A chi serve

Principianti curiosi e sviluppatori che vogliono capire come funzionano i sistemi di messaggistica, le telecomunicazioni e i servizi sempre accesi

Cosa serve per iniziare

  • Un computer Windows, Mac o Linux
  • Nessuna esperienza di programmazione richiesta
  • Pazienza per una sintassi un po' diversa dal solito: dopo qualche ora diventa naturale

Cosa installare

Erlang/OTP 28 (o successivo)Si scarica gratis da erlang.org/downloads: su Windows c'è un installatore che aggiunge il comando erl; su Mac e Linux si usa il gestore di pacchetti o lo strumento mise
rebar3Lo strumento ufficiale per creare progetti, compilare, provare e scaricare librerie; si scarica gratis da rebar3.org
Visual Studio CodeEditor gratuito da code.visualstudio.com con l'estensione Erlang LS per colori e suggerimenti

A cosa ti serve

  • Messaggistica e telecomunicazioni: è il linguaggio nato in Ericsson per le centrali telefoniche
  • Sistemi che devono restare sempre accesi: chat, code di messaggi, database distribuiti
  • Manutenzione e studio di software famosi scritti in Erlang come RabbitMQ e CouchDB
  • Base solida per passare a Elixir e Gleam, che usano la stessa macchina virtuale
  • Ruoli di nicchia, richiesti e ben pagati, in fintech, gaming e telco

Programma del corso

10 lezioni in 3 livelli. Ogni lezione: video, spiegazione, codice da copiare o provare, esercizio con soluzione e quiz.

Progetto finale: Cassa del negozio che si riavvia da sola

Costruisci un servizio che tiene il saldo di una cassa, accetta incassi e restituisce il totale, controllato da un supervisore, con i test EUnit.

I passi

  1. Crea il progetto con rebar3 new app cassa, che prepara anche il supervisore.
  2. Scrivi il modulo cassa come gen_server con stato iniziale 0.
  3. Aggiungi incassa/1 (call) e totale/0 (call).
  4. Rifiuta gli importi non positivi restituendo {error, importo_non_valido}.
  5. Inserisci cassa tra i figli del supervisore principale.
  6. Scrivi i test EUnit: totale iniziale zero, due incassi sommati, importo negativo rifiutato.
  7. Con rebar3 shell prova a uccidere il processo con exit(whereis(cassa), kill) e verifica che il supervisore lo riavvii.

Esame e attestato

Alla fine del corso fai l'esame: 15 domande, serve il 75% di risposte giuste. Superato l'esame ottieni l'attestato stampabile con nome, ore, punteggio e un codice di controllo che chiunque può verificare.

Vai all'esame

Glossario di Erlang/OTP

BEAM
La macchina virtuale di Erlang, usata anche da Elixir e Gleam.
OTP
Insieme di librerie e regole di Erlang per costruire sistemi robusti.
Atomo
Un nome in minuscolo che vale solo sé stesso, come ok o errore.
Pattern matching
Il confronto di forma fatto dal segno uguale e dalle clausole delle funzioni.
Tupla
Un gruppo di elementi di numero fisso tra graffe, come {ok, 5}.
Mappa
Una raccolta di coppie chiave e valore, scritta con #{}.
Clausola
Una delle alternative di una funzione, scelta dal pattern matching.
Guardia
Condizione aggiuntiva dopo when per scegliere una clausola.
Processo
Una piccola unità di esecuzione della BEAM, isolata e capace di ricevere messaggi.
gen_server
Il modello OTP per un processo con stato che risponde a richieste call e cast.
Supervisor
Un processo che controlla altri processi e li riavvia in caso di guasto.
ETS
Erlang Term Storage: tabelle veloci in memoria condivisibili tra processi.

Le prime 2 lezioni sono gratis

Per il corso completo, scuole e aziende: chiedi le condizioni.