2015
2015
Sei collegato come utente non registrato
Riepilogo dell'insegnamento: Linguaggi di programmazione
Informazioni generali
Corso di Laurea Informatica e Tecnologie per la Produzione del Software Percorso
CFU 9 Università BARI
Ore di didattica frontale per CFU 8 Settore Scientifico Disciplinare INF/01
Commento I 9 CFU sono 7 di lezioni frontali e 2 di esercitazioni

9 cfu così ripartiti nelle aree:

  • 1 CFU nell'area A - Fondamenti
  • 8 CFU nell'area D - Linguaggi

Sillabo dell'insegnamento

  • A - Fondamenti
    • * CAL - Calcolabilità
      + AL-BACC - Basic Automata, Computability and Complexity
      Il problema della fermata; Espressività dei linguaggi di programmazione Formalismi per la calcolabilità; Funzioni e algoritmi
  • D - Linguaggi
    • * LF - Linguaggi Formali
      PL-FS - Formal Semantics
      Linguaggi formali e operazioni; Espressioni regolari, Automi finiti; Grammatiche Vincoli sintattici contestuali Linguaggi liberi: derivazioni, ambiguità Dalla sintassi alla semantica
    • * MATR - Macchine Astratte e Tecniche per la Realizzazione dei linguaggi di programmazione
      + PL-LTE - Language Translation and Execution
      Nozione di macchina astratta e l'interprete; Implementazione di un linguaggio; Gerarchie di macchine astratte
    • * MATR - Macchine Astratte e Tecniche per la Realizzazione dei linguaggi di programmazione
      * PL-RS - Runtime Systems
      Tecniche di gestione della memoria: Gestione statica e dinamica Implementazione delle regole di scope Problema del dangling reference; Tecniche di Garbage collection
    • * TTCI - Tecniche di Traduzione: Compilatori e Interpreti
      * PL-SyA - Syntax Analysis
      Compilatori Analisi lessicale: Token; Generatori di analizzatori lessicali Analisi sintattica: Automi a pila; Analizzatori sintattici; Manipolazioni delle grammatiche Parser top-down: Parser a discesa ricorsiva, First e Follow, Grammatiche LL(k); Generatori di analizzatori sintattici
    • PLN - Paradigmi Linguistici
      + PL-PP - Programming paradigms (Imperative, Functional, ?)
      Paradigma imperativo Strutturare il controllo: espressioni e comandi elementari; comandi per il controllo di sequenza nella programmazione strutturata; ricorsione Strutturare i dati: Tipi e Sistemi di tipi Equivalenza, Compatibilità e conversione, Polimorfismo Controllo e inferenza di tipo, Sicurezza:
    • PLN - Paradigmi Linguistici
      + PL-OOP - Object-Oriented Programming
      Paradigma orientato agli oggetti Concetti fondamentali: Oggetti, Classi, Incapsulamento, Sottotipi, Ereditarietà, Selezione dinamica dei metodi Aspetti implementativi Polimorfismo e generici
    • ALC - Astrazioni Linguistiche e Composizionalità
      PL-APC - Advanced Programming Constructs
      Nomi e oggetti denotabili, Ambiente e blocchi; Regole di scope; Sottoprogrammi, Astrazione funzionale e Passaggio dei parametri Eccezioni
    • ALC - Astrazioni Linguistiche e Composizionalità
      PL-APC - Advanced Programming Constructs
      Astrarre sui dati Tipi di dato astratti, Information hiding Programmazione in grande: Moduli

Le sottoaree "obbligatorie" sono prefisse da un segno più (+). Le sottoare "suggerite" sono prefisse da un segno asterisco (*).