Vai al contenuto

Videocorso F# CGFA

Programmazione funzionale su .NET 10: poco codice, pochi errori, tutto l'ecosistema Microsoft

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

A chi serve

Chi ha già scritto qualche programma e vuole un linguaggio moderno, conciso e sicuro: sviluppatori .NET, analisti di dati, studenti, professionisti della finanza

Cosa serve per iniziare

  • Un computer Windows, Mac o Linux
  • Aver già scritto qualche programma in un altro linguaggio (basta poco)
  • Un po' di abitudine al terminale

Cosa installare

.NET SDK 10Si scarica gratis da dotnet.microsoft.com: contiene il compilatore F# 10, la console interattiva "dotnet fsi" e il comando "dotnet". Controlla con "dotnet --version"
Visual Studio Code con IonideEditor gratuito da code.visualstudio.com; installa l'estensione "Ionide-fsharp", che mostra i tipi e gli errori mentre scrivi
dotnet fsiLa console interattiva di F#: già inclusa nell'SDK. Ci provi le espressioni e lanci i file di script .fsx
TerminalePrompt dei comandi o PowerShell su Windows, Terminale su Mac e Linux

A cosa ti serve

  • Sviluppo .NET: F# usa tutte le librerie di C# e di NuGet
  • Finanza, assicurazioni e analisi quantitativa: F# nasce per modellare bene i dati
  • Analisi dei dati e script con i notebook interattivi
  • Backend web e servizi cloud su Azure
  • Applicazioni web con Fable e Elmish, che traducono F# in JavaScript

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 della bottega: scontrino da terminale

Costruisci un programma F# che prende gli articoli di una bottega napoletana, calcola il totale di ogni riga con il tipo decimal, applica lo sconto sopra i cento euro e stampa uno scontrino ordinato, dentro un progetto dotnet con un test.

I passi

  1. Crea il progetto con dotnet new console -lang "F#" -o Bottega.
  2. Definisci il record Riga con articolo, quantità e prezzo in decimal.
  3. Scrivi totaleRiga e scontoCarrello in un modulo Cassa.
  4. Ordina le righe con List.sortBy e stampa lo scontrino con printfn.
  5. Aggiungi un progetto di test xUnit che verifichi lo sconto.
  6. Estensione: leggi gli articoli da un file di testo con File.ReadAllLines.

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 F#

.NET
La piattaforma di Microsoft su cui gira F#, con compilatore, librerie e strumenti multipiattaforma.
dotnet fsi
La console interattiva di F#, dove provi le espressioni e lanci gli script .fsx.
Immutabile
Un valore che, una volta creato, non cambia più.
Inferenza di tipo
La capacità del compilatore di dedurre i tipi da solo, senza che tu li scriva.
Pipe
L'operatore |> che passa il valore di sinistra alla funzione di destra, per concatenare i passi.
Pattern matching
Scegliere il ramo di un match in base alla forma del valore.
Record
Un tipo che raggruppa campi con un nome, immutabile e copiabile con with.
Unione discriminata
Un tipo che elenca alternative, ciascuna con eventuali dati.
option
Il tipo che rappresenta un valore che può mancare: Some valore oppure None.
Result
Il tipo che rappresenta un successo, Ok, o un errore con il suo motivo, Error.
Espressione di calcolo
Un blocco speciale come async o task, dove let! e return seguono regole definite dal builder.
NuGet
Il gestore dei pacchetti di .NET: da lì scarichi le librerie da usare nei tuoi progetti.

Le prime 2 lezioni sono gratis

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