Gennaro COSTAGLIOLA | COMPILATORI
Gennaro COSTAGLIOLA COMPILATORI
cod. 0522500134
COMPILATORI
0522500134 | |
DIPARTIMENTO DI INFORMATICA | |
CORSO DI LAUREA MAGISTRALE | |
INFORMATICA | |
2024/2025 |
ANNO CORSO 1 | |
ANNO ORDINAMENTO 2016 | |
PRIMO SEMESTRE |
SSD | CFU | ORE | ATTIVITÀ | |
---|---|---|---|---|
INF/01 | 6 | 48 | LEZIONE | |
INF/01 | 3 | 24 | LABORATORIO |
Obiettivi | |
---|---|
QUESTO CORSO HA L’OBIETTIVO DI INTRODURRE I CONCETTI FONDAMENTALI E LE TECNICHE UTILIZZATE PER COSTRUIRE UN SEMPLICE COMPILATORE DESCRIVENDO SIA ASPETTI TEORICI CHE PRATICI. CONOSCENZA E CAPACITÀ DI COMPRENSIONE LO STUDENTE ACQUISIRÀ LA CONOSCENZA: - DEI CONCETTI PRINCIPALI DEI LINGUAGGI DI PROGRAMMAZIONE - DELLE TECNICHE DI SVILUPPO PER L'IMPLEMENTAZIONE DI UN LINGUAGGIO DI PROGRAMMAZIONE - DELLE FASI DI UN COMPILATORE - DEI FORMALISMI NECESSARI PER LA SPECIFICA FORMALE DI UN LINGUAGGIO DI PROGRAMMAZIONE - DEGLI ALGORITMI PRINCIPALI PER LA GENERAZIONE AUTOMATICA DI TRADUTTORI E COMPILATORI CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE LO STUDENTE SARÀ IN GRADO DI: - UTILIZZARE TOOLS DI GENERAZIONE AUTOMATICA PER L'IMPLEMENTAZIONE DEI LINGUAGGI DI PROGRAMMAZIONE - SVILUPPARE UN COMPILATORE PER UN SEMPLICE LINGUAGGIO DI PROGRAMMAZIONE AUTONOMIA DI GIUDIZIO LO STUDENTE SARÀ IN GRADO DI: - VALUTARE LA QUALITÀ E LA COMPLESSITÀ DI UN LINGUAGGIO DI PROGRAMMAZIONE - PERSEGUIRE GLI OBIETTIVI NECESSARI PER IL COMPLETAMENTO DI UN PROGETTO - SELEZIONARE GLI STRUMENTI PIÙ ADATTI NELLO SVILUPPO DI UN COMPILATORE ABILITÀ COMUNICATIVE LO STUDENTE SARÀ IN GRADO DI: - RAPPRESENTARE E COMUNICARE, MEDIANTE TESTI O STRUMENTI VIRTUALI, RISULTATI DI RICERCHE O ELABORAZIONI PROPRIE. - SAPER DESCRIVERE, IN FORMA SCRITTA, IN MODO CHIARO E SINTETICO ED ESPORRE ORALMENTE CON PROPRIETÀ DI LINGUAGGIO LE CARATTERISTICHE DI UN PROGETTO SOFTWARE CAPACITÀ DI APPRENDIMENTO LO STUDENTE SARÀ IN GRADO DI: - APPLICARE LE CONOSCENZE ACQUISITE NELLA COMPRENSIONE DI NUOVI LINGUAGGI DI PROGRAMMAZIONE - APPROFONDIRE GLI ARGOMENTI TRATTATI USANDO MATERIALI DIVERSI DA QUELLI PROPOSTI - PROCEDERE ALL’AGGIORNAMENTO CONTINUO DELLE PROPRIE CONOSCENZE UTILIZZANDO LA DOCUMENTAZIONE TECNICA |
Prerequisiti | |
---|---|
IL CORSO RICHIEDE LA CONOSCENZA DI STRUTTURE DATI E ALGORITMI, ARCHITETTURA, LINGUAGGI DI PROGRAMMAZIONE DI ALTO LIVELLO |
Contenuti | |
---|---|
IL CORSO INTRODUCE LO STUDENTE AI CONCETTI PRINCIPALI DELLO SVILUPPO DI UN COMPILATORE SIA DAL LATO FRONT END CHE BACKEND. GLI ARGOMENTI PRINCIPALI SONO: • STORIA, PARADIGMI E CARATTERISTICHE DEI LINGUAGGI DI PROGRAMMAZIONE (2 ORE) • ANALISI LESSICALE (10 ORE) • SPECIFICA LESSICALE DEI LINGUAGGI DI PROGRAMMAZIONE, FLEX (4 ORE) • CONCETTI BASE DELLE GRAMMATICHE (2 ORE) • PARSING TOP DOWN E BOTTOM UP (14 ORE) • SPECIFICA SINTATTICA DEI LINGUAGGI DI PROGRAMMAZIONE, JAVACUP/BISON (4 ORE) • TRADUZIONI GUIDATE DALLA SINTASSI (8 ORE) • RAPPRESENTAZIONI INTERMEDIE (8 ORE) • ANALISI SEMANTICA E TYPE CHECKING (8 ORE) • INTRODUZIONE ALLA GESTIONE DELLA MEMORIA A RUNTIME (2 ORE) • GENERAZIONE DEL CODICE (4 ORE) |
Metodi Didattici | |
---|---|
LE LEZIONI FRONTALI VENGONO SVOLTE PER CIRCA 2/3 PER LA PRESENTAZIONE DEGLI ARGOMENTI E PER CIRCA 1/3 SONO RIVOLTE AD ESERCITAZIONI IN CLASSE. LO STUDIO INDIVIDUALE PREVEDE ANCHE UN’ATTIVITÀ PROGETTUALE PER L’UTILIZZO DEI TOOLS PRESENTATI. DURANTE IL CORSO VERRANNO PROPOSTI DEI TEST DI AUTOVALUTAZIONE PUBBLICATI SUL SITO DEL CORSO. LA DISCUSSIONE CON ALTRI STUDENTI E CON IL DOCENTE VERRÀ STIMOLATA SIA IN CLASSE, SIA UTILIZZANDO IL FORUM SUPPORTATO DAL SITO DEL CORSO. LO SVOLGIMENTO DELLE ESERCITAZIONI E LA FREQUENZA DEL CORSO SONO FORTEMENTE CONSIGLIATE. |
Verifica dell'apprendimento | |
---|---|
LA VALUTAZIONE DELLE CONOSCENZE E DELLE CAPACITÀ ACQUISITE DA PARTE DEGLI STUDENTI È BASATA SU UNA PROVA SCRITTA ED UNA PROVA ORALE. LA PROVA SCRITTA RIGUARDERÀ DOMANDE APERTE ED ESERCIZI TESI A VALUTARE IL RAGGIUNGIMENTO DEGLI OBIETTIVI DEL CORSO. NELLA PROVA ORALE SI DISCUTERÀ DEL MATERIALE ILLUSTRATO IN CLASSE E DELLA REALIZZAZIONE OBBLIGATORIA DI UN PROGETTO SULLO SVILUPPO DI UN COMPILATORE. LA DISCUSSIONE INCLUDERÀ LA RICHIESTA DI MODIFICHE DEL CODICE DEL PROPRIO ELABORATO PROGETTUALE DIRETTAMENTE AL PC. LA VALUTAZIONE FINALE È DATA DALLA SOMMA DEI VOTI OTTENUTI DALLE PROVE. IN PARTICOLARE, SIA LA PROVA SCRITTA CHE LE MODIFICHE AL PC CON DISCUSSIONE DEL PROGETTO AVRANNO, CIASCUNA, UN PUNTEGGIO MASSIMO DI 16 PUNTI. DURANTE IL CORSO SONO PREVISTE DUE PROVE INTERCORSO CHE, SE SUPERATE, SOSTITUIRANNO LA PROVA SCRITTA DEL I APPELLO. IL SUPERAMENTO DELLO SCRITTO NEGLI APPELLI GENNAIO-FEBBRAIO RESTERÀ VALIDO FINO ALL'INIZIO DEL SECONDO SEMESTRE, QUELLO DI MARZO ENTRO LO STESSO MESE, QUELLO DI GIUGNO-LUGLIO ENTRO LUGLIO QUELLO DI SETTEMBRE FINO ALL’INIZIO DEI CORSI DEL PRIMO SEMESTRE, QUELLO DI NOVEMBRE ENTRO LO STESSO MESE. |
Testi | |
---|---|
V. AHO, R. SETHI, AND J. D. ULLMAN, COMPILERS: PRINCIPLES, TECHNIQUES, AND TOOLS, ADDISON-WESLEY, SECOND EDITION 2007 APPUNTI DEL DOCENTE ED ALTRO MATERIALE ELETTRONICO: SITO WEB DEL CORSO. DI CONSULTAZIONE: PRATT, T. W. AND M. V. ZELKOWITZ, PROGRAMMING LANGUAGES: DESIGN AND IMPLEMENTATION, 4RD ED., PRENTICE-HALL, 2000 |
Altre Informazioni | |
---|---|
LA BACHECA DEL CORSO PER NOTIZIE ED ALTRE INFORMAZIONI ED IL DIARIO DELLE ATTIVITÀ SONO PUBBLICATI SUL SITO DEL CORSO. GLI STUDENTI DEVONO ESSERE PREPARATI A TRASCORRERE UNA CONGRUA QUANTITÀ DI TEMPO NELLO STUDIO AL DI FUORI DELLE LEZIONI. UNA PREPARAZIONE SODDISFACENTE RICHIEDE IN MEDIA DUE ORE DI STUDIO PER CIASCUNA ORA TRASCORSA IN AULA. |
BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2024-11-18]