Programmazione II (2011/2012)

Codice insegnamento
4S02724
Crediti
6
Coordinatore
Nicola Fausto Spoto
Settore disciplinare
INF/01 - INFORMATICA
Lingua di erogazione
Italiano
Pagina Web
http://profs.sci.univr.it/~spoto
L'insegnamento è organizzato come segue:
Attività Crediti Periodo Docenti Orario
Teoria 4 I semestre Nicola Fausto Spoto
Laboratorio 2 I semestre Nicola Fausto Spoto

Orario lezioni

I semestre
Attività Giorno Ora Tipo Luogo Note
Teoria martedì 10.30 - 11.30 lezione Aula B  
Teoria giovedì 8.30 - 10.30 lezione Aula A  
Laboratorio mercoledì 10.30 - 13.30 lezione Laboratorio didattico Delta  

Obiettivi formativi

Il corso fornisce conoscenze avanzate di programmazione, permettendo agli studenti di sviluppare algoritmi complessi in un linguaggio imperativo ad oggetti come Java e di usare strumenti e tecniche di supporto alla programmazione.

Programma

Dal linguaggio C al linguaggio Java: similitudini e differenze. Ambiente di sviluppo da linea di comando. Ambiente di sviluppo Eclipse. Tipi primitivi. Array e collezioni. Il concetto di classe e di oggetto. Garbage collection. Uso della gerarchia. Programmazione di base in Swing. Javadoc. Testing in JUnit. Implementazione delle classi. Estensione delle classi. Tipi enumerativi, tipi generici e interfacce. Organizzazione della memoria e ricorsione. Eccezioni. Strutture dati dinamiche: liste e alberi. Stream. Annotazioni. Riflessione. Concorrenza: uso dei thread e della libreria standard per la concorrenza. Uso di uno strumento di collaborazione e gestione delle versioni: git. Pulizia del codice e refactoring.

Modalità d'esame

I 6 esami annuali consistono nella scrittura di codice Java su carta e senza l'ausilio di un calcolatore. Viene valutata la capacità di tradurre gli algoritmi in codice e di organizzare le informazioni in classi, senza significativi errori di sintassi. Il voto ottenibile è fra 0 e 22. Entro la fine di febbraio gli studenti devono realizzare un progetto software che verrà descritto a lezione. Tale progetto deve essere realizzato in gruppi di indicativamente 3 studenti e viene valutato con un voto fra 0 e 10. Il voto finale è la somma del voto del compito e di quello del progetto, in trentesimi.

Testi di riferimento
Attività Autore Titolo Casa editrice Anno ISBN Note
Teoria Giovanni Pighizzini, Mauro Ferrari Dai fondamenti agli oggetti. Corso di programmazione JAVA (Edizione 3) Pearson Addison-Wesley 2008 978 88 7192 448 9 Testo di riferimento consigliato.