Anno di corso: 1

Crediti: 8
Crediti: 8
Crediti: 8
Crediti: 3
Tipo: Lingua/Prova Finale
Crediti: 3
Tipo: Lingua/Prova Finale
Crediti: 3
Tipo: Lingua/Prova Finale
Crediti: 3
Tipo: Lingua/Prova Finale

Anno di corso: 2

Anno di corso: 3

PROGRAMMAZIONE 2

Scheda dell'insegnamento

Anno accademico di regolamento: 
2015/2016
Anno di corso: 
1
Anno accademico di erogazione: 
2015/2016
Tipo di attività: 
Obbligatorio
Crediti: 
8
Ciclo: 
Secondo Semestre
Ore di attivita' didattica: 
76
Prerequisiti: 

Programmazione imperativa (vedi Programmazione 1)

Moduli

Metodi di valutazione

Modalita' di verifica dell'apprendimento: 

La verifica dell'apprendimento comprende una prova scritta e una eventuale discussione del risultato.
La verifica dell'apprendimento può inoltre derivare dall'esito di prove intermedie parziali.

Valutazione: 
Voto Finale

Obiettivi formativi

Alla fine del corso lo studente sarà in grado di utilizzare i principali concetti della programmazione a oggetti per progettare, sviluppare e testare semplici programmi Java.

Contenuti

Basi della progettazione software con utilizzo di UML. Programmazione a oggetti in Java con utilizzo di alcune librerie. Ambiente di sviluppo Eclipse. Elementi sulle interfacce grafiche. Testing e debugging con Junit.

Programma esteso

1 "Concetti di base:
- analisi, progettazione e programmazione
- astrazioni: classificazioni, generalizzazioni, aggregazioni
- notazione UML: diagramma delle classi, diagramma degli oggetti
- Object-Oriented Programming"

2 "Definizione di classi e crezione di oggetti in Java:
- dal diagramma delle classi alle classi in Java
- gestione della memoria e concetto di reference
- associazioni 1 a 1
- associazioni 1 a n
- liste
"

3 "Metodi:
- metodi di istanza
- overloading
- passaggio parametri di tipo reference
- metodi di classe"

4 "Information hiding e incapsulamento
- getodi get e set
- visibilità
- costruttori"

5 "Eclipse
Junit
Debug"

6 "Ereditarietà
- Uml e Java
- overriding
- costruttori nelle classi derivate
- polimorfismo
- classi astratte e interfacce"

7 "Eccezioni
- gestione delle eccezioni
- definizione di classi di eccezioni"

8 "Alcune librerie standard:
- I/O
- collection framework
- cenni sulle interfacce grafice: AWT e gestione eventi"

Bibliografia consigliata

Programmazione di base e avanzata con Java, Walter Savitch, Edizione in Italiano, ISBN-10: 8865181907, Pearson, 2014
UML distilled. Guida rapida al linguaggio di modellazione standard, Martin Fowler, Edizione in Italiano, ISBN-10: 887192598X, Pearson, 2010

Metodi didattici

Lezioni ed esercitazioni in aula. Attività di laboratorio in e-learning mediante esercizi, test di autovalutazione e tutoraggio on-line.