Studiare
In questa sezione è possibile reperire le informazioni riguardanti l'organizzazione pratica del corso, lo svolgimento delle attività didattiche, le opportunità formative e i contatti utili durante tutto il percorso di studi, fino al conseguimento del titolo finale.
Piano Didattico
Queste informazioni sono destinate esclusivamente agli studenti e alle studentesse già iscritti a questo corso.Se sei un nuovo studente interessato all'immatricolazione, trovi le informazioni sul percorso di studi alla pagina del corso:
Laurea in Informatica - Immatricolazione dal 2025/2026Il piano didattico è l'elenco degli insegnamenti e delle altre attività formative che devono essere sostenute nel corso della propria carriera universitaria.
Selezionare il piano didattico in base all'anno accademico di iscrizione.
1° Anno
Insegnamenti | Crediti | TAF | SSD |
---|
Analisi matematica I
Architettura degli elaboratori
2° Anno Attivato nell'A.A. 2019/2020
Insegnamenti | Crediti | TAF | SSD |
---|
3° Anno Attivato nell'A.A. 2020/2021
Insegnamenti | Crediti | TAF | SSD |
---|
Un insegnamento a scelta
Insegnamenti | Crediti | TAF | SSD |
---|
Analisi matematica I
Architettura degli elaboratori
Insegnamenti | Crediti | TAF | SSD |
---|
Insegnamenti | Crediti | TAF | SSD |
---|
Un insegnamento a scelta
Legenda | Tipo Attività Formativa (TAF)
TAF (Tipologia Attività Formativa) Tutti gli insegnamenti e le attività sono classificate in diversi tipi di attività formativa, indicati da una lettera.
Linguaggi (2020/2021)
Codice insegnamento
4S02727
Crediti
6
Lingua di erogazione
Italiano
Settore Scientifico Disciplinare (SSD)
INF/01 - INFORMATICA
L'insegnamento è organizzato come segue:
Teoria
Laboratorio
Obiettivi formativi
Il corso si propone di fornire competenze specifiche nell'ambito dei linguaggi di programmazione. In particolare, il corso fornisce competenze necessarie per operare negli ambiti di progettazione, sviluppo e manutenzione di sistemi software a partire dalla scelta del giusto linguaggio di programmazione in funzione delle finalità e delle caratteristiche di ciò che si vuole sviluppare.
Al termine dell'insegnamento quindi, lo studente dovrà dimostrare di avere conoscenze inerenti le nozioni fondamentali del linguaggi di programmazione e capacità di studio e comprensione di nuovi linguaggi di programmazione; saper applicare le sue conoscenze e capacità di comprensione per comprendere la struttura di linguaggi di programmazione di uso comune e saper scegliere il linguaggio di programmazione in funzione di ciò che deve sviluppare; di aver sviluppato le competenze necessarie per intraprendere studi successivi con un alto grado di autonomia.
Programma
------------------------
MM: Teoria
------------------------
Macchine virtuali: interpreti e compilatori. Descrizione di un linguaggio di programmazione: sintassi: grammatiche non contestuali. Semantica operazionale strutturata. Gestione della memoria: regole di visibilità, funzioni e procedure, passaggio di parametri, stack record di attivazione, heap. Controllo: strutturazione ed astrazione, eccezioni. Dati e tipi: tipi di dato, tipi di base e composti, sistema dei tipi, inferenza di tipo e polimorfismo, garbage collection. Esempi di paradigmi di programmazione.
------------------------
MM: Laboratorio
------------------------
Utilizzo di strumenti per fare pratica sull'interpretazione di linguaggi di programmazione.
Bibliografia
Attività | Autore | Titolo | Casa editrice | Anno | ISBN | Note |
---|---|---|---|---|---|---|
Teoria | Robert W. Sebesta | Concepts of Programming Languages (10th Edition) (Edizione 10) | Pearson | 2013 | 0131395319 | |
Teoria | John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman | Introduction to Automata Theory, Languages and Computation (Edizione 2) | Addison-Wesley | 2000 | 0201441241 | |
Teoria | Maurizio Gabbrielli, Simone Martini | Linguaggi di programmazione: principi e paradigmi (Edizione 2) | McGraw Hill | 2011 | 88-386-626 | |
Teoria | I. Mastroeni e C. Priami | Semantica Operazionale: Strumenti e Applicazioni | CEDAM | 1999 | 881322138X | |
Laboratorio | Maurizio Gabbrielli, Simone Martini | Linguaggi di programmazione: principi e paradigmi (Edizione 2) | McGraw Hill | 2011 | 88-386-626 |
Modalità d'esame
------------------------
MM: Teoria
------------------------
Esame scritto (con orale obbligatorio per confermare un voto allo scritto maggiore di 26/30). Obiettivo della prova scritta è quello di accertare una adeguata comprensione dei contenuti e la capacità di rielaborare tali contenuti. Viene inoltre accertata una sufficiente capacità di ragionamento formale sulla semantica dei linguaggi di programmazione attraverso la risoluzione di esercizi. Obiettivo della prova orale è quello di accertare una avanzata comprensione dei contenuti che permette una analisi critica e una rielaborazione dei concetti e dei risultati studiati, anche mediante l’accertamento della conoscenza di teoremi e dimostrazioni. Verrà valutata la possibilità integrare l'esame scritto con un progetto da concordare con il docente e che può essere fatto in gruppo di massimo due studenti.
------------------------
MM: Laboratorio
------------------------
Si veda quanto descritto nella parte di teoria ed esercitazione.