Videocorso Elixir CGFA
Da zero a programmare applicazioni solide e concorrenti, con un assaggio di Phoenix
- Partenza: Da zero
- 14 ore con gli esercizi
- 10 lezioni in 3 livelli
- 2 lezioni gratis
A chi serve
Principianti e sviluppatori curiosi che vogliono costruire servizi web, chat e sistemi che restano in piedi anche quando qualcosa si rompe
Cosa serve per iniziare
- Un computer Windows, Mac o Linux
- Nessuna esperienza di programmazione richiesta
- Saper aprire il terminale e creare un file di testo
Cosa installare
A cosa ti serve
- Servizi web in tempo reale con Phoenix e LiveView
- Sistemi di messaggistica, chat e notifiche con migliaia di utenti insieme
- Back-end di app e piattaforme che devono restare sempre accese
- Internet delle cose e sistemi embedded con Nerves
- Aziende e startup che cercano pochi sviluppatori Elixir e li pagano bene
Programma del corso
10 lezioni in 3 livelli. Ogni lezione: video, spiegazione, codice da copiare o provare, esercizio con soluzione e quiz.
Base
Primi programmi: valori, pattern matching, liste, mappe e funzioni
Intermedio
Collezioni, gestione dei risultati, struct e progetti con Mix
Avanzato
Processi, GenServer, supervisori e un assaggio di Phoenix
Progetto finale: Cassa del negozio con riavvio automatico
Costruisci un piccolo servizio che tiene il saldo di una cassa, accetta incassi e restituisce il totale, controllato da un supervisore. Lo testi con ExUnit.
I passi
- Crea il progetto con
mix new cassa --sup, che prepara anche l'albero di supervisione. - Scrivi il modulo
Cassacome GenServer con stato iniziale 0. - Aggiungi
incassa/1(cast) etotale/0(call). - Rifiuta gli importi negativi restituendo
{:error, :importo_non_valido}con una call. - Inserisci
Cassatra i figli del supervisore inlib/cassa/application.ex. - Scrivi i test: totale iniziale zero, due incassi sommati, importo negativo rifiutato.
- Prova a far cadere il processo e verifica in iex 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.
Glossario di Elixir
- BEAM
- La macchina virtuale di Erlang su cui gira Elixir, famosa per solidità e concorrenza.
- OTP
- La libreria standard di Erlang per costruire sistemi robusti: GenServer, supervisori, applicazioni.
- Atomo
- Un nome che vale solo sé stesso, scritto con i due punti davanti, come :ok.
- 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 %{}.
- Immutabilità
- Principio per cui un dato non cambia mai: si crea un dato nuovo.
- Pipe
- L'operatore |> che passa il risultato di una funzione come primo argomento della successiva.
- Processo
- Una piccola unità di esecuzione della BEAM, isolata e capace di ricevere messaggi.
- GenServer
- Un modello OTP per un processo che tiene uno stato e risponde a richieste call e cast.
- Supervisor
- Un processo che controlla altri processi e li riavvia in caso di guasto.
- Phoenix
- Il framework web di Elixir, con LiveView per le pagine interattive e Ecto per i database.
Le prime 2 lezioni sono gratis
Per il corso completo, scuole e aziende: chiedi le condizioni.