Salta ai contenuti. | Salta alla navigazione

Strumenti personali

PROGRAMMAZIONE A OGGETTI E LOGICA

Anno accademico e docente
Non hai trovato la Scheda dell'insegnamento riferita a un anno accademico precedente? Ecco come fare >>
English course description
Anno accademico
2021/2022
Docente
FABRIZIO RIGUZZI
Crediti formativi
6
Periodo didattico
Primo Semestre
SSD
INF/01

Obiettivi formativi

L'obiettivo principale del corso consiste nel rendere gli studenti in grado di programmare in linguaggi orientati agli oggetti. Inoltre, il corso illustrerà i principi di base della programmazione logica.
Le principali conoscenze acquisite saranno:
- principi di base della programmazione orientata agli oggetti
- tecniche di programmazione ad oggetti
- il linguaggio di programmazione Java
- cenni di programmazione logica
Le principali abilità (ossia la capacità di applicare le conoscenze acquisite) saranno:
- analisi e soluzione di problemi di crescente complessità mediante codice ad oggetti in Java
- implementazione di semplici algoritmi in programmazione logica

Prerequisiti

Il corso "Programmazione" è propedeutico.
E’ necessario avere acquisito e assimilato le seguenti conoscenze fornite dal corso "Programmazione":
- principi della programmazione strutturata
- linguaggio C
- semplici strutture di dati
- algoritmi di base

Contenuti del corso

Il corso prevede 48 ore di didattica frontale più tutorato.
Introduzione alla programmazione orientata agli oggetti (OOP) (8 ore): OOP classica, OOP in Java, oggetti composti, package, stringhe, array, wrapper, IDE Eclipse.
OOP in Java (14 ore): Ereditarietà, subtyping, polimorfismo, la classe Object, classi astratte e interfacce, eccezioni, input/output.
Java Collection Framework (JCF) (16 ore): JCF, generici, JCF con generici.
Programmazione logica (10 ore).

Metodi didattici

Il corso prevede 48 ore di lezione.
Le lezioni riguardano gli argomenti del corso e includono anche semplici prove al calcolatore da parte degli studenti degli esempi illustrati dal docente.

Modalità di verifica dell'apprendimento

L'obiettivo della prova d'esame consiste nel verificare il livello di raggiungimento degli obiettivi formativi precedentemente indicati.
L'esame consiste in una prova in cui gli studenti dovranno scrivere un programma in Python che legga dati da file di testo e li elabori. Il programma deve essere scritti al calcolatore. Inoltre la prova include un esercizio di programmazione logica.
La prova dura 2 ore e mezza. Vale 32 punti. E' consentito usare materiale didattico. Il codice del programma deve poter essere compilato senza errori, altrimenti il compito non verrà corretto.
L’esame può essere sostenuto anche mediante due prove parziali, la prima, su Java, durante la sospensione delle lezioni, la seconda programmazione logica, alla fine del corso.

Testi di riferimento

I testi di riferimento sono
- dispense del docente
- Walter Savitch, Programmazione di base e avanzata con JAVA 2/Ed, Pearson, 2018
Per approfondimenti consultare
Bruce Eckel, Thinking in Java 4th edition, Prentice Hall, 2006, https://archive.org/details/TIJ4CcR1/page/n3
Cay S. di Horstmann, Concetti di informatica e fondamenti di Java - 6a ed., Apogeo, 2016
H. M. Deitel, P. J. Deitel. Java Fondamenti di Programmazione, 3a ed., Apogeo, Milano.
J. Lewis, W. Loftus, Java - Fondamenti di progettazione software, Addison Wesley, Italia.