INSEGNAMENTO Laboratorio di Informatica _________________________________________________________ ANNO ACCADEMICO 2011/2012 _________________________________________________________ Informatica e Tecnologie per la Produzione di Software CORSO DI LAUREA IN _________________________________________________________ DOCENTE Corrado Mencar _________________________________________________________ ANNO DI CORSO II I ____________________ SEMESTRE _________________________ 3 N° CREDITI LEZIONI FRONTALI: ______________ 24 N° ORE LEZIONI FRONTALI: __________________ 51 STUDIO INDIVIDUALE (________) 3 N° CREDITI ESERCITAZIONI/LABORATORIO: ______________ 30 45 STUDIO INDIVIDUALE (_______) N° ORE ESERCITAZIONI/LABORATORIO: ________ 0 N° CREDITI PROGETTO/CASO DI STUDIO: ______________ 0 N° ORE STUDIO INDIVIDUALE (_______) 6 TOTALE CREDITI: ________ PRE-REQUISITI Elementi di programmazione in java OBIETTIVI FORMATIVI L'insegnamento ha l'obiettivo di approfondire le questioni pragmatiche della programmazione, con particolare riferimento al linguaggio Java. In particolare l'insegnamento si propone di formare gli studenti ad una corretta impostazione nella scrittura dei programmi, con particolare riferimento alla notazione, alla modularizzazione dei programmi, al test e debugging, al design by contract. Campus Via E. Orabona, 4 Tel (+39) 080 5442294; Fax (+39) 080 5443196 [email protected] Pagina 1 Laboratorio di Informatica 2011/2012 OBIETTIVI PROFESSIONALIZZANTI 1) Acquisizione di elementi pragmatici per la programmazione in java 2) Capacità di documentazione e literate programming 3) Test e debugging di programmi java 4) Capacità di programmazione difensiva TESTO/I ADOTTATO/I B.W. Kerninghan, R. Pike, ''Programmazione nella pratica'', Addison Wesley, 1999 Dispense fornite dal docente TESTO/I CONSIGLIATO/I Horstmann: Concetti di informatica e fondamenti di Java 2, 3^ ed, Apogeo B. Eckel, ''Thinking in Java'', 4th edition, Prentice Hall, 2006 PROPEDEUTICITÀ OBBLIGATORIE nessuna PROPEDEUTICITÀ CONSIGLIATE Programmazione + Lab Campus Via E. Orabona, 4 Tel (+39) 080 5442294; Fax (+39) 080 5443196 [email protected] Pagina 2 Laboratorio di Informatica 2011/2012 INCENTIVI ALLA FREQUENZA * Al fine di incentivare la frequenza del corso, gli studenti che frequentano assiduamente le lezioni e le esercitazioni possono ottenere un bonus che incrementa il voto finale fino a un massimo del 10%. Il bonus effettivo è proporzionale alla frequenza registrata durante il corso, ed è massima se è uguale o supera l'80% delle lezioni e delle esercitazioni. Per accedere al bonus, occorre che la frequenza sia monitorata dal docente. A tal fine è necessario iscriversi al monitoraggio. L'iscrizione è facoltativa; senza iscrizione, tuttavia, la frequenza non potrà essere monitorata e l'eventuale bonus non potrà essere assegnato. ESONERI O PROVE DI VALUTAZIONE INTERMEDIE CON MODALITÀ DI ESECUZIONE * non sono previste prove di valutazione intermedie VALIDITÀ DEI VOTI E PREMIALITÀ ACQUISITE * Il bonus di frequenza è valido per l'intero Anno Accademico e decade dall'A.A. successivo. MODALITÀ DI ESECUZIONE DEGLI ESAMI * La prova ha una durata di tre ore, e richiede lo sviluppo di un programma in Java mediante l'ambiente di sviluppo Eclipse. La prova consegnata è valutata dal docente con una votazione espressa in trentesimi oppure con un giudizio di insufficienza, lieve o grave. La valutazione è articolata in voci, pesate mediante un punteggio, e per ciascuna voce è assegnato un giudizio. PROVA SCRITTA ________ NO PROVA ORALE ________ NO PROVA DI LABORATORIO SI ________ PROVA DI PROGETTO O CASO DI STUDIO NO ________ * Valido solo per gli studenti che sostengono l’esame nell’anno a cui si riferisce il modulo Campus Via E. Orabona, 4 Tel (+39) 080 5442294; Fax (+39) 080 5443196 [email protected] Pagina 3 Laboratorio di Informatica 2011/2012 CONTENUTO Teoria - Stile e notazione nella programmazione java - Sun Code Conventions - Documentazione e commento del codice - JavaDoc - Sviluppo modulare - i package in Java - Debugging; il debugger di Eclipse - Unit Testing - JUnit - Asserzioni e design by contract - Fondamenti di programmazione OO - Algoritmi di ordinamento fondamentali; - QuickSort, MergeSort, Natural Merge Sort Laboratorio - Ricerca di Fibonacci - Ricerca per interpolazione - Risolutore di equazioni di II grado - Numeri romani - Risolutore di sistemi lineari in due equazioni e due incognite - Classi per algoritmi di ordinamento - Jump Search Campus Via E. Orabona, 4 Tel (+39) 080 5442294; Fax (+39) 080 5443196 [email protected] Pagina 4 Laboratorio di Informatica 2011/2012 Campus Via E. Orabona, 4 Tel (+39) 080 5442294; Fax (+39) 080 5443196 [email protected] Pagina 5 Laboratorio di Informatica 2011/2012 Campus Via E. Orabona, 4 Tel (+39) 080 5442294; Fax (+39) 080 5443196 [email protected] Pagina 6