Attività | Crediti | Periodo | Docenti | Orario |
---|---|---|---|---|
Teoria | 5 | II semestre | Federico Busato | |
Laboratorio | 1 | II semestre | Federico Busato |
Il corso si propone di fornire paradigmi e tecniche risolutive relative allo sviluppo di sistemi software nei contesti in cui sono richieste alte prestazioni. L’obiettivo è dare alle studentesse e agli studenti conoscenze e abilità per progettare, implementare e valutare metodi e strumenti per realizzare software efficiente, in modalità collaborativa, sapendo sfruttare le caratteristiche dell’hardware coinvolto e implementando buone pratiche di programmazione. Il linguaggio di riferimento sarà il C++ con il coinvolgimento di adeguate librerie di supporto. Al termine del corso le studentesse e gli studenti dovranno dimostrare di conoscere e comprendere i principali metodi di gestione efficiente del codice, gestione della memoria, di sviluppo di librerie per il raggiungimento di alte prestazioni e per l’organizzazione di progetti in contesti collaborativi. Questo consentirà alle studentesse e agli studenti di saper scegliere le tecniche risolutive più adeguate per lo sviluppo di sistemi software efficienti in contesti applicativi diversi e di proseguire gli studi in modo autonomo nell’ambito della progettazione ad alte prestazioni in C++ approfondendo argomenti trattati a lezione su fonti di documentazione diverse.
Il materiale del corso e il programma dettagliato è riportato al seguente link
Course material: Modern C++ Programming
Per superare l'esame lo studente dovrà dimostrare di:
Attività | Autore | Titolo | Casa editrice | Anno | ISBN | Note |
Teoria | Marc Gregoire | Professional C++ (Edizione 4) | Wrox Pr Inc | 2014 | 978-1-118-85805-9 | |
Teoria | Bjarne Stroustrup | Programming Principles and Practice Using C++ (Edizione 2) | Addison-Wesley | 2014 | 978-0-321-99278-9 |