Riepilogo dell'insegnamento: Programmazione e laboratorio
12 cfu così ripartiti nelle aree:
- 12 CFU nell'area C - Programmazione
Sillabo dell'insegnamento
- C - Programmazione
- *
SCP - Sviluppo e Correttezza dei Programmi
Invarianti e correttezza dei programmi iterativi; problema della terminazione. Dimostrazioni per induzione e concetto di invariante.
- *
POO - Programmazione Orientata agli Oggetti
Elementi di programmazione object-oriented in Java: classi e oggetti; campi, costruttori e metodi.
- *
PSA - Problem Solving e Algoritmi
Tecniche di memoization e programmazione dinamica.
-
PP - Paradigmi di Programmazione
Paradigma funzionale. Concetto di stato e paradigma imperativo/sequenziale. Rivisitazione delle strutture di dati elementari attraverso il paradigma imperativo.
- *
SDTD - Strutture Dati e Tipi di Dati astratti
Strutture dati dal punto di vista dell'utilizzatore e dal punto di vista dell'implementatore. Pile e code.
- *
SDTD - Strutture Dati e Tipi di Dati astratti
Introduzione all'astrazione sui dati attraverso semplici dati strutturati. Specifica astratta di una struttura dati e diversità delle scelte realizzative. Dati di dimensione variabile.
- *
R - Ricorsione
Ricorsione generale e ricorsione di coda (tail recursion). Approccio iterativo come ricorsione di coda.
- *
P - Procedure
Procedure funzionali e procedure imperative.
- *
CB - Costrutti di Base
Costrutti dei programmi iterativi.
- *
R - Ricorsione
Definizioni ricorsive.
- *
SS - Sintassi e Semantica
Sintassi di Scheme. Modello di valutazione per sostituzione e riduzione.
- *
SS - Sintassi e Semantica
Principali comandi e costrutti del linguaggio Java.
(*) Le sottoaree con asterisco sono quelle che il GRIN ritiene essenziali