Table of Contents

Programmazione Avanzata


News

Non ci sono notizie.


Informazioni Generali

Docente:

Link ESSE3

Orario delle Lezioni:

  • L'orario delle lezioni è disponibile al seguente link

Corsi di Laurea:

Link ClassRoom

  • Il materiale didattico del corso è reso disponibile sul ClassRoom a cui è possibile iscriversi con il seguente link.

Obiettivi del Corso

Conoscenze:

  • concetti basilari della metodologia orientata agli oggetti nella progettazione del software;
  • caratteristiche principali dei linguaggi orientati agli oggetti, quali Java, e tecniche di programmazione;
  • elementi base della programmazione funzionale;
  • schemi di soluzioni avanzate a problemi ricorrenti nel design del software.

Competenze acquisite (al termine del corso) Gli studenti dovranno dimostrare di saper usare la metodologia orientata agli oggetti nella progettazione e implementazione di componenti software, che siano facilmente estendibili e riusabili.

Capacità acquisite (al termine del corso) Capacità di sviluppare software flessibile, utilizzando tecniche avanzate orientate agli oggetti.


Testi di riferimento

  • Note fornite settimanalmente dal docente.

Contenuti del Corso

Nel corso verrà introdotta, attraverso l'uso del linguaggio Java, la metodologia orientata agli oggetti per la costruzione del software:

  1. Tipi di dato e rappresentazione dell'informazione.
  2. Paradigmi di programmazione: imperativo, funzionale e orientato agli oggetti.
  3. Principi di Programmazione funzionale.
  4. Principi di Programmazione Orientata agli Oggetti.
    1. Ereditarietà. Composizione di oggetti e delega di messaggi. Le classi astratte.
    2. Classi come Tipi. Polimorfismo per sottotipo e polimorfismo parametrico.
    3. UML (Unified Modeling Language): il “diagramma di classi” per l'analisi, la progettazione e la documentazione.
  5. Programmazione test-driven.
  6. Programmazione Concorrente.
  7. Programmazione Orientata agli Eventi.
  8. Programmazione di Interfacce.

Modalità d'esame

L'esame consiste in:

  1. Un progetto (da svolgere singolarmente) per valutare la capacità di applicare le metodologie presentate nel corso;
  2. Una prova scritta per verificare le conoscenze base introdotte nel corso, possono partecipare allo scritto solo coloro che hanno consegnato il progetto;
  3. Un colloquio orale (opzionale) per discutere il progetto e per valutare le competenze acquisite.

Progetti

I progetti devono essere consegnati due giorni prima dello scritto utilizzando il corrispondente link sul Classroom del corso. Ogni sessione d'esame avrà una specifica distinta e disponibile al seguente link:

  • Specifica appelli Giugno/Luglio 2022 (Disponibile dal 25/4/2022)
  • Specifica appelli Settembre 2022 (Disponibile dal 25/7/2022)
  • Specifica appelli Febbraio/Marzo 2023 (Disponibile dal 31/10/2022)

Esami

Date Prove Scritte A.A. 2021/2022

  • 08/06/2022, Ore 10:00, Aula AA1 Polo Lodovici;
  • 29/06/2022, Ore 10:00, Aula AA1 Polo Lodovici;
  • 20/07/2022, Ore 10:00, Aula AA1 Polo Lodovici;
  • 07/09/2022, Ore 10:00, Aula AB1 Polo Lodovici;
  • 28/09/2022, Ore 10:00, Aula AB1 Polo Lodovici;
  • 01/02/2023, Ore 10:00, Aula AB1 Polo Lodovici;
  • 22/02/2023, Ore 10:00, Aula AB1 Polo Lodovici;
  • 15/03/2023, Ore 10:00, Aula AB1 Polo Lodovici.