COMPLEMENTI DI PROGRAMMAZIONE
Obiettivi formativi
Il corso ha l'obiettivo di fornire allo studente la capacità di comprendere e progettare programmi che richiedano una conoscenza approfondita del modello di esecuzione dei programmi, in particolare, facciano una gestione esplicita della memoria. A questo scopo il corso fa riferimento ad una caratterizzazione dell'architettura dell'elaboratore basata sul modello di Von Neumann ed utilizza il linguaggio procedurale C/C++ per la programmazione. Attraverso il linguaggio verranno sviluppate le conoscenze per la gestione della memoria (stack, heap), la realizzazione di strutture dati di base e complesse, quali vettori, matrici, liste collegate, pile, code, alberi e grafi, tecniche di programmazione ricorsive, e la programmazione di algoritmi su tali strutture dati. Il corso ha una forte connotazione progettuale e prevede quindi esercitazioni settimanali in laboratorio, in ambiente Linux. Obiettivi specifici: Conoscenza e comprensione: Fornire un'ampia panoramica sull’analisi e la progettazione di programmi in linguaggi che richiedano una conoscenza approfondita del modello di esecuzione, in particolare della gestione della memoria. I diversi problemi affrontati vengono definiti formalmente e vengono fornite sia le basi teoriche sia informazione tecniche per comprendere le soluzioni adottate. Applicare conoscenza e comprensione: Risolvere problemi specifici di programmazione, mediante l'applicazione delle tecniche studiate. Lo svolgimento di esercitazioni in laboratorio consente agli studenti di applicare le conoscenze acquisite. Capacità critiche e di giudizio: Essere in grado di valutare la correttezza di un programma e la sua adeguatezza rispetto ai requisiti. Capacità comunicative: Essere in grado di descrivere le scelte effettuate nelle soluzioni adottate e spiegare il meccanismo di esecuzione dei programmi secondo il modello adottato. Capacità di apprendimento: Approfondimento autonomo di alcuni argomenti presentati nel corso tramite lo svolgimento a casa di esercitazioni proposte in laboratorio.
Programmi - Frequenza - Esami
Programma
Prerequisiti
Testi di riferimento
Modalità insegnamento
Frequenza
Modalità di esame
Bibliografia
Modalità di erogazione
Programmi - Frequenza - Esami
Programma
Prerequisiti
Testi di riferimento
Modalità insegnamento
Frequenza
Modalità di esame
Bibliografia
Modalità di erogazione
Programmi - Frequenza - Esami
Programma
Prerequisiti
Testi di riferimento
Modalità insegnamento
Frequenza
Modalità di esame
Bibliografia
Modalità di erogazione
- Codice insegnamento10606848
- Anno accademico2024/2025
- CorsoIngegneria Informatica e Automatica
- CurriculumInformatica
- Anno1º anno
- Semestre2º semestre
- SSDING-INF/05
- CFU9
- Ambito disciplinareMatematica, informatica e statistica