Il linguaggio di programmazione Rust
Una guida completa e introduttiva a Rust, che copre i concetti di programmazione a sistema, la sicurezza della memoria, la concorrenza e lo strumentario di Rust (Cargo, rustup). Il corso passa dalla sintassi base alla realizzazione di progetti completi come un server web multithreadato.
Panoramica del corso
Riepilogo del contenuto
Una guida introduttiva completa a Rust, che copre concetti di programmazione a livello di sistema, sicurezza della memoria, concorrenza e strumenti Rust (Cargo, rustup). Il percorso va dalla sintassi di base alla creazione di progetti completi come un server web multithread.
Padroneggia l'arte della programmazione sistematica sicura, veloce e concorrente con la guida definitiva a Rust.
Autore: Steve Klabnik e Carol Nichols, con contributi dalla comunità Rust
Ringraziamenti: Contributi da parte della comunità Rust; pubblicato in formato cartaceo e ebook da No Starch Press.
Obiettivi di apprendimento
- Installare e gestire toolchain Rust con
rustupsu diverse piattaforme operative. - Scrivere, compilare ed eseguire un programma Rust di base, identificando le componenti anatomiche fondamentali del codice.
- Usare Cargo per creare strutture di progetto standardizzate, gestire le build e produrre binari ottimizzati per il rilascio.
- Catturare e memorizzare l'input dell'utente, gestendo la mutabilità delle variabili e potenziali errori di I/O.
- Integrare dipendenze esterne tramite Cargo e gestire build riproducibili tramite
Cargo.lock. - Implementare la logica di gioco usando inferenza dei tipi, parsing di stringhe, cicli e l'operatore di flusso di controllo
match. - Distinguere tra costanti e shadowing di variabili per gestire immutabilità dei dati e ambito.
- Implementare correttamente tipi scalari (interi, float, booleani, caratteri) e composti (tuple, array).
- Distinguere tra istruzioni ed espressioni per definire funzioni con valori di ritorno specifici.
- Distinguere tra memoria dello stack e heap e spiegare come Rust gestisce i dati dell'heap.