PROGRAMMAZIONE II (C) [Cognomi P-Z] (aa 24/25)
Questo insegnamento concorre agli obiettivi formativi specifici
dell'ambito delle conoscenze di programmazione del Corso di Laurea in
Informatica (L31) e fa parte dell’area Informatica caratterizzante.
Permette a studenti e studentesse di proseguire il percorso di
introduzione alla programmazione, iniziato con Programmazione I, con
l'obiettivo di approfondire concetti di informatica di base e in
particolare il paradigma di programmazione imperativa, affrontando in
maniera sistematica l’allocazione dinamica di dati in memoria principale
e il relativo accesso, le strutture dati ricorsive, la ricorsione e
fornendo un’introduzione alla strutturazione del codice in più file. In
particolare, l’insegnamento mostrerà come definire ed utilizzare
semplici strutture dati (liste, alberi binari, pile, code), i meccanismi
di base per favorire riuso e modularità del software, la gestione di
casi eccezionali, quali per esempio input malformati, così come alcune
librerie fondamentali per la programmazione in C. Si darà particolare
enfasi agli aspetti di buona progettazione del software, utilizzando
concetti presi a prestito dall'ingegneria del software e formalismi
grafici.