Nuova ricerca

Nicola BICOCCHI

Professore Associato
Dipartimento di Ingegneria "Enzo Ferrari"

Insegnamento: Programmazione a Oggetti

Ingegneria Informatica (MO) (Offerta formativa 2024)

Obiettivi formativi

L'insegnamento introduce alla programmazione orientata agli oggetti utilizzando il linguaggio Java. L'obiettivo dell'insegnamento è fornire allo studente le competenze necessarie a sviluppare moderne applicazioni, sia desktop che mobili, in modo autonomo.

Prerequisiti

Si auspicano conoscenze di base sulla programmazione procedurale fornite nei corsi di Fondamenti di Informatica I e II.

Programma del corso

- Variabili, costrutti condizionali e iterativi (1 CFU)
- Classi, classi astratte, interfacce, classi generiche (1 CFU)
- Collections framework (1 CFU)
- Programmazione funzionale (1 CFU)
- JavaFX framework (1 CFU)
- JDBC/REST framework (1CFU)

Il contenuto dettagliato dell'insegnamento è visibile a questo indirizzo:
https://github.com/nbicocchi/java-core

Metodi didattici

L’insegnamento è organizzato in moduli organizzati su base settimanale. Ogni modulo tratta un argomento specifico e prevede una parte di laboratorio. L’insegnamento viene erogato mediante lezioni frontali ed esercitazioni in presenza che vengono svolte con l’ausilio di slides proiettate. La frequenza alle lezioni in presenza non è obbligatoria. L’insegnamento è erogato in lingua italiana.

Testi di riferimento

Big Java - Early Objects 7th Edition; Horstmann; Wiley Press

Verifica dell'apprendimento

L'insegnamento prevede lo sviluppo di un progetto individuale o a coppie da sviluppare in Java. Il tema del progetto è libero (applicazione desktop, applicazione mobile, videogioco). L'esame consiste in una discussione orale del progetto stesso (10/30) unita alla soluzione di 2 esercizi pratici al calcolatore (20/30).

Risultati attesi

Conoscenza e capacità di comprensione:
Conoscenze di modellazione attraverso costrutti orientati agli oggetti
Conoscenze sulle componenti principali del linguaggio Java
Capacità di leggere e scrivere software in Java

Autonomia di giudizio:
Particolare rilevanza è attribuita alla stimolazione della capacità dello studente di selezionare gli opportuni metodi e strumenti per risolvere problemi specifici.

Abilità comunicative:
Al termine dell'insegnamento lo studente deve essere in grado di esporre e rielaborazione i concetti appresi, con particolare attenzione al lessico e alla proprietà di linguaggio.

Capacità di apprendimento:
Al termine dell'insegnamento lo studente deve essere in grado di sviluppare da zero un software orientato agli oggetti utilizzando Java. E' inoltre auspicabile la capacità di approfondire in modo autonomo aspetti collaterali degli argomenti proposti.