28006 - FONDAMENTI DI INFORMATICA T-2

Scheda insegnamento

Anno Accademico 2015/2016

Conoscenze e abilità da conseguire

Conoscenza di base sulle metodologie e sugli strumenti di analisi, specifica e progetto di programmi secondo il paradigma della programmazione ad oggetti.

Programma/Contenuti

Concetti fondamentali dei linguaggi di programmazione. Famiglie di linguaggi imperativi, funzionali, logici e a oggetti. Introduzione alla progettazione del software: componenti software, tipi di dato astratto. Concetti, metodologie e linguaggi. Introduzione alla programmazione ad oggetti e al linguaggio Java: componenti software in Java, classi e istanze, meccanismi di costruzione-distruzione di istanze. Oggetti composti, ereditarietà, polimorfismo e genericità. Classi astratte, interfacce: il ruolo delle interfacce nel progetto e loro relazione con le classi. Ereditarietà semplice e multipla fra interfacce. Il concetto di eccezione. Elementi di base per la costruzione di interfacce grafiche: concetto di evento e programmazione event-driven. Stream di I/O. Principali strutture dati: liste, hashmap, alberi. Algoritmi su tali strutture dati e loro implementazione sia in forma procedurale sia in forma orientati agli oggetti in Java.

Testi/Bibliografia

Si veda l'elenco aggiornato disponibile on-line sul portale didattico curato dal docente.

Metodi didattici

Il corso viene erogato mediante proiezione diretta dal computer del docente, in aula, di diapositive Powerpoint (delle quali lo studente può liberamente scaricare gli stampati prima delle lezioni), in modo da evitare allo studente l'ansia di dover trascrivere tutto ciò che viene mostrato, permettendogli di concentrarsi sui contenuti esposti.
Lezioni ed esercitazioni sono continuamente intercalate, alternando l'esposizione di un concetto o costrutto linguistico con i relativi esempi, di cui viene immediatamente mostrato l'uso effettivo in diretta.
Questo modulo, di taglio più teorico, è strettamente integrato con il secondo modulo, svolto prevalentemente in laboratorio in forma di esercitazione guidata del tutor, sia a gruppi sia come attività indivuduale; ogni esercitazione pratica affronta uno specifico argomento (tipicamente quello spiegato nella settimana precedente), mediante la proposta di esercizi e casi di studio il più possibile concreti, per la cui soluzione è necessario mettere a frutto quanto acquisito.

Modalità di verifica dell'apprendimento

La verifica dell'apprendimento si svolge sia in forma di autovalutazione dello studente, tramite le esercitazioni sistematicamente proposte in laboratorio durante il corso, sia al termine, sotto forma di prova d'esame.
La prova d'esame è integrata con quella del modulo 2 svolto in parallelo e consiste in una prova pratica svolta in laboratorio, così da potersi avvalere degli strumenti su esso disponibili nonché di testi, dispense e manuali, che lo studente potrà liberamente portare con sé. Coerentemente con l'obiettivo della prova, che è simulare 'nel piccolo' una sessione di lavoro di un ingegnere professionista di fronte a un problema concreto da risolvere in un tempo assegnato e non già costituire un mero esercizio di memoria, la prova consiste nella risoluzione di un problema applicativo di media complessità: il programma consegnato deve essere compilabile (diversamente, non sarà neppure valutato con conseguente esito negativo dell'esame) e ragionevolmente funzionante. L'esito positivo (almeno 18/30) della prova pratica di laboratorio è condizionante per l'accesso alla prova orale, che tuttavia è di norma facoltativa nel caso in cui il voto della prova di laboratorio sia almeno pari a 23/30; la Commissione si riserva comunque di effettuare una prova orale ogni qual vola lo ritenga necessario. La prova orale rimane perciò obbligatoria soltanto per chi abbia riportato nella prova di laboratorio un voto compreso fra 18 e 22/30: in tal caso, l'orale consiste principalmente - ma non esclusivamente - nella discussione della prova di laboratorio e in domande tese ad appurare la competenza dello studente nelle aree che abbiano evidenziato le maggiori lacune. Lo studente che abbia riportato nella prova di laboratorio in voto non inferiore a 23/30, e sia dunque esonerato dalla prova orale obbligatoria, può comunque chiedere di affrontare una prova orale facoltativa: in tal caso, il voto ottenuto è comunque verbalizzato. La richiesta di orale - facoltativo o obbligatorio secondo i casi - dev'essere fatta al docente entro un mese dalla prova di laboratorio: il corrispondente orale dovrà essere sostenuto entro quattro mesi dalla data della prova originale. Nel calcolo dei suddetti periodi non si computano i periodi festivi (Natale, Pasqua, agosto).

Strumenti a supporto della didattica

Sono disponibili sul sito Web del corso copia delle diapositive proiettate e discusse a lezione a cura del docente, nonché alcune dispense integrative; un elenco esaustivo di testi di riferimento e manuali è consultabile sia sul sito Web, sia sulle diapositive. Il sito fornisce inoltre suggerimenti per ulteriori esercizi e approfondimenti.

Link ad altre eventuali informazioni

http://enricodenti.disi.unibo.it

Orario di ricevimento

Consulta il sito web di Enrico Denti

Consulta il sito web di Gabriele Zannoni