AMBITI

Ti possiamo affiancare nei progetti che toccano quattro grandi aree tematiche: Sicurezza Occupazionale, Sostenibilità, Ing. del Software e Ing. dei Sistemi.

Corso in Rust we tRust!

DURATA: 20 ore

PERIODO:  A richiesta

OBIETTIVI: Basi di programmazione in Rust: safety, performance, reliability and RobUSTness at once  

PROGRAMMA DEL CORSO:

  • Modulo 1 – introduzione al Rust 
  • Perché il Rust? 
  • Tool della suite di Rust 
  • Workspaces, packages, crates e modules: come organizzare un progetto Rust 
  • Path e visibilità dei simboli 

 durata: 2 ore 

  • Modulo 2 – le basi del linguaggio 
  • Mutabilità delle variabili 
  • Tipi di base 
  • Funzioni 
  • Controllo di flusso 
  • Concetto di ownership & borrowing 
  • Tipo slice 

 durata: 2 ore 

  • Modulo 3 – strutture ed enumerati 
  • Definizione di struttura 
  • Metodi e funzioni associate 
  • Definizione di enumerato 
  • Concetto in wrapping e unwrapping 
  • Match e if let 
  • Pattern matching 

 durata: 2 ore 

  • Modulo 4 – collezioni 
  • Vettori 
  • Stringhe 
  • Hashmap 
  • Sviluppiamo un videogame! 

 durata: 2 ore 

  • Modulo 5 – generic data types 
  • Generics 
  • Traits 
  • Lifetimes 

 durata: 2 ore 

  • Modulo 6 – gestione degli errori 
  • Macro panic! 
  • Enumerato Result 
  • Propagazione degli errori 
  • Sviluppiamo un tool per la console! 

 durata: 2 ore 

  • Modulo 7 – iteratori e closures 
  • Concetto di closure 
  • Concetto di iteratore 
  • Esempi 

 durata: 2 ore 

  • Modulo 8 – multithreading 
  • Uso di threads 
  • Comunicazione tra thread 
  • Variabili condivise tra thread 
  • Tratti Sync and Send, Concetto di closure 

 durata: 2 ore 

  • Modulo 9 – funzioni avanzate 
  • Smart pointers 
  • OOP in Rust 
  • Trait objects 
  • Sviluppiamo lo “state pattern” in Rust 

durata: 2 ore 

  • Modulo 10 – gli ultimi concetti e recap 
  • Raw pointers 
  • Unsafe Rust 
  • Integrazione tra C e Rust 
  • Recap finale 

durata: 2 ore 

METODOLOGIA: In videoconferenza oppure in aula, a scelta dell’azienda. Il corso prevede una metodologia attiva e partecipata, con esercitazioni, analisi di casi di  esperienze concrete.

DESTINATARI: Sviluppatori software, system programmer, DevOps, studenti STEM con basi di coding.

DOCENTI: Docenti tecnici esperti dell’Area Ingegneria del Software di NIER Ingegneria.

ATTESTATO: Alla fine del corso viene rilasciato un attestato di partecipazione.


Iscriviti alla Newsletter .