Concetti di Linguaggi di Programmazione (parte 2)
Description
OBIETTIVI DEL CORSO
Esiste una grande varietà di linguaggi di programmazione. Questi linguaggi si basano su alcuni concetti fondamentali la cui comprensione è importante sia per la programmazione sia per le lezioni di programmazione.
I moduli "Programmazione 1" e "Programmazione 2" si occupano di due paradigmi fondamentali quali la programmazione funzionale e imperativa (orientata agli oggetti): in questo corso vogliamo analizzarne in particolare le differenze e le affinità.
CONTENUTO DEL CORSO
- Implementazione di semplici programmi in stile funzionale e orientato agli oggetti;
- Refactoring tra programmi imperativi, funzionali e orientati agli oggetti
- Distinzione tra tipizzazione statica e dinamica;
- Individuazione di e programmazione con tipi di dati algebrici;
- Programmazione con polimorfismo parametrico ed ereditario
- Interpretazione dei concetti linguistici fondamentali con sintassi e regole semantiche;
- Uso di “notional machine” per spiegare concetti linguistici
IMPOSTAZIONE PEDAGOGICO-DIDATTICA
Lezioni, esercizi e compiti
MODALITÀ D'ESAME
Esame finale scritto (se la situazione COVID-19 lo permette)
People
Course director
Assistant
Additional information
Semester
Fall
Academic year
2021-2022
ECTS
2.5
Language
Italian
Education
Master Specialistico per l'insegnamento dell'Informatica, Foundation course, 2nd year