Torna ai corsi
AI019 Professional

Programmazione Elixir

Una guida completa alla programmazione funzionale e concorrente con Elixir. Copre la transizione dal pensiero orientato agli oggetti a quello funzionale, il pattern matching, l'immutabilità, il modello attore per la concorrenza e la creazione di sistemi distribuiti robusti con OTP.

4.8
30.0h
981 studenti
0 mi piace
Intelligenza Artificiale
Inizia ad imparare

Panoramica del corso

📚 Riepilogo del Contenuto

Una guida completa alla programmazione funzionale e concorrente con Elixir. Copre la transizione dal pensiero orientato agli oggetti a quello funzionale, il pattern matching, l'immutabilità, il modello attore per la concorrenza e la creazione di sistemi distribuiti robusti con OTP.

Padroneggia l'arte di costruire sistemi concorrenti resistenti attraverso la bellezza della programmazione funzionale.

Autore: Dave Thomas

Ringraziamenti: José Valim, Corey Haines, Bruce Tate, Jessica Kerr, Anthony Eden, Chad Fowler, Kim Shrier, Candace Cunningham, e Potomac Indexing.

🎯 Obiettivi di Apprendimento

  1. Confrontare il modello di trasformazione dei dati di Elixir con la programmazione tradizionale basata sullo stato.
  2. Configurare la shell interattiva di Elixir (IEx) ed eseguire codice Elixir tramite script e compilazione.
  3. Applicare l'operatore di confronto (=), l'operatore pin (^) e il carattere jolly (_) per destrutturare e validare i dati.
  4. Spiegare le implicazioni teoriche e pratiche dell'immutabilità sulle prestazioni e sulla gestione della memoria.
  5. Identificare e utilizzare i tipi predefiniti di Elixir, tra cui tipi Value, System e Collection.
  6. Applicare le regole di ambito delle variabili e l'espressione with per gestire trasformazioni dati complesse.
  7. Creare e invocare funzioni anonime usando sia la notazione standard che quella di cattura (&).
  8. Implementare funzioni nominali all'interno di moduli usando pattern matching e ricorsione per gestire logiche complesse.
  9. Applicare le clausole di guardia e i parametri predefiniti per controllare il flusso di esecuzione delle funzioni.
  10. Deconstruire e Costruire Liste: Utilizzare il pattern head/tail per navigare e costruire strutture ricorsive di liste.

Lezioni