Sviluppatore di ruggine. Professionale - corso gratuito da Otus, formazione 6 mesi, Data: 7 dicembre 2023.
Miscellanea / / December 10, 2023
Un corso approfondito sul linguaggio di programmazione Rust, in cui vedremo:
- caratteristiche chiave di Rust, la cui comprensione consente non solo di sviluppare prodotti software complessi in questo linguaggio, ma aiuta anche a progettare meglio il software in generale;
- le biblioteche e i progetti più popolari ampiamente utilizzati nella pratica;
multithreading e architettura software.
Il corso sarà interessante:
Sviluppatori in linguaggi di sistema (C, C++, ...) che desiderano:
studiare Rust, i suoi punti di forza e di debolezza;
imparare a evitare errori quando si lavora con la memoria e il multithreading;
imparare la progettazione di software ad alte prestazioni
Sviluppatori in linguaggi interpretati o di alto livello (Python, JS, Java, C#, ...) che desiderano:
- imparare un linguaggio che ti consenta di realizzare sezioni critiche per le prestazioni del tuo software il più velocemente possibile;
- caratteristiche di lavorare con software di basso livello;
- approcci allo sviluppo di software sicuro e tollerante ai guasti
Cosa imparerai durante il corso?
- utilizzare il linguaggio Rust per lo sviluppo del software;
- distribuire Rust e l'ambiente di sviluppo;
- creare software affidabile, tollerante ai guasti e ad alte prestazioni;
- testare il codice;
- utilizzare librerie di terze parti;
- scrivere codice asincrono
2
corsoInfinitySwap, sviluppatore principale di Rust
Mi sono interessato alla programmazione già a scuola. Lavora come programmatore per più di 5 anni. È interessato alla computer grafica e allo sviluppo di giochi. Stack principale: Rust, C++, Python. Ho esperienza con C#, JS, PHP, MatLab. Progettato e sviluppato: - software per l'elaborazione del segnale digitale; - file system per l'archiviazione sequenziale di grandi dimensioni volumi di dati; - framework per l'elaborazione parallela dei dati su un processore grafico; - Parti backend di sistemi distribuiti di raccolta ed elaborazione dati; Responsabile del programma
1
BENEHo iniziato a conoscere la programmazione all'età di 14 anni e ho provato molte lingue finché non ho trovato Rust. Scrive Rust in Open-Source da più di 4 anni. È stato coinvolto nello sviluppo di giochi, database e blockchain...
Ho iniziato a conoscere la programmazione all'età di 14 anni e ho provato molte lingue finché non ho trovato Rust. Scrive Rust in Open-Source da più di 4 anni. È stato coinvolto nello sviluppo di giochi, database e blockchain, ha lavorato come sviluppatore Rust presso Pontem Technology Ltd. Partecipante attivo alla comunità Rust di lingua russa, co-organizzatore di incontri locali a San Pietroburgo. Docente del corso "Linguaggio di programmazione Rust" presso l'Università statale di San Pietroburgo. Insegnante
Introduzione a Rust
-Argomento 1.Concetti e caratteristiche di base di Rust
- Argomento 2. Sistema di assemblaggio. Utilità di supporto. Selezione di un ambiente di sviluppo
-Argomento 3.Sintassi di base
-Argomento 4.Sintassi avanzata
Moduli, casse e test
-Argomento 5. Suddivisione del progetto in file e blocchi logici. Test ed esempi
-Argomento 6. Pacchetti e casse
-Argomento 7.Utilizzo di rack di terze parti. Versioni e caratteristiche
Libreria standard
-Argomento 8. Enumerazioni e tipi di base
-Argomento 9.Puntatori e raccolte intelligenti
-Argomento 10.Input e output
-Argomento 11. Scrittura di un'applicazione client-server
Multithreading
-Argomento 12. Problemi di codice multi-thread. Inizio di un thread parallelo.
-Argomento 13. Monitoraggio della correttezza di un'applicazione multi-thread in fase di compilazione
-Argomento 14. Scrivere il proprio ThreadPool
-Argomento 15. Tipi di multitasking. Asincronia
-Argomento 16. Asinconità sotto il cofano
-Argomento 17. Rendere asincrona l'applicazione client-server
-Argomento 18. Comunicazione e sincronizzazione tra processi
Architettura
-Argomento 19.Ruggine e OOP
-Argomento 20.Ruggine e FP
-Argomento 21.Gestione degli errori
-Argomento 22. Invarianti
-Argomento 23.Modelli
Framework e librerie
-Argomento 24. Biblioteche utilitaristiche popolari
-Argomento 25.Logging, debugging e profilazione
-Argomento 26.Rust e Backend
-Tema 27.Rust e GUI
-Argomento 28.Rust e GameDev
-Tema 29.Rust e frontend
-Argomento 30. Interazione con altre lingue
Lavoro di progetto
-Argomento 31. Selezione dell'argomento e organizzazione del lavoro del progetto
-Argomento 32. Consultazione su progetti e compiti a casa
-Tema 33. Tutela dell'opera di progettazione
-Argomento 34. Riassumendo il corso