Fintanto che non viene esplicitamente pubblicata la pagina del corso per l'anno accademico successivo, si intende valida per tale anno la pagina del corso per l'anno accademico corrente.
L'obiettivo formativo del corso è quello di imparare gli elementi fondamentali per padroneggiare la programmazione in modo professionale.
Scrivere un programma che in qualche modo funziona è abbastanza facile. Non richiede di sporcarsi le mani, né di faticare. Viceversa, scrivere un programma che funziona in modo robusto ed affidabile, anche e soprattutto man mano che lo si modifica ed aggiorna, richiede strumenti e tecniche adeguate.
In questo corso, per raggiungere tale obiettivo, si utilizza:
Per saperne di più si suggerisce di leggere le due prefazioni (una orientata allo studente, l'altra al docente) del libro di testo.
Il programma provvisorio del corso è disponibile a questa pagina.
Questo insegnamento può essere seguito e sostenuto anche da studenti del Corso di Laurea Magistrale in Matematica. A questo scopo tali studenti devono avvisare, anche per mail, il docente all'inizio del corso e sostenere un breve colloquio preliminare di verifica della consistenza - da un punto di vista didattico - dell'insegnamento con il resto del piano di studio dello studente. Successivamente devono inserire questo corso nel loro piano di studio con un carico didattico di 8 CFU (Crediti Formativi Universitari).
Questo è il libro di testo (in inglese) seguito nel corso delle lezioni:
Bertrand Meyer
Touch of Class: Learning to Program Well with Objects and Contracts
Springer
Errata Corrige per l'edizione 2009 (1-ma edizione), dal sito originale del libro.
I lucidi (in inglese) presentati durante le lezioni sono disponibili nella loro versione originale su questa pagina cliccando sul link slides and video recordings. Qui potete anche accedere alle registrazioni audio/video originali delle stesse lezioni (utili se volete esercitare l'inglese!)
La stessa pagina contiene anche il materiale di esercitazione. Cliccare sul link exercise sheets per testo e soluzioni di esercizi. Cliccare sul link exercise slides per i lucidi di approfondimento degli argomenti trattati nelle esercitazioni.
Versioni inglese aggiornate negli anni successivi del materiale di esercitazione si trovano ai link sotto elencati, mentre i lucidi delle lezioni degli anni successivi sono tutti in tedesco:
L'ambiente di sviluppo EiffelStudio usato durante il corso può essere scaricato seguendo le istruzioni presenti al suo sito di supporto.
Le istruzioni per scaricare la libreria Traffic usata per le esercitazioni si trovano nel documento di testo (sheet) dell'esercizio della settimana 1. Si suggerisce di usare la versione più recente disponibile di tale documento. Un'introduzione alla libreria Traffic si trova qui. Un aiuto alla risoluzione di problemi incontrati con Traffic si trova qui.
In aggiunta al libro di testo sopra indicato si segnalano le seguenti risorse disponibili online:
Per quanto riguarda Eiffel si suggerisce l'installazione di Eiffel GPL versione 7.1 Build_88986 (la 7.2 ha un'installazione piu' difficile da gestire). Ricordatevi di scegliere quella giusta per la vostra piattaforma.
Si raccomanda (sistemi Windows) di effettuare un'installazione usando un compilatore Microsoft, dal momento che l'installazione che usa il compilatore gcc potrebbe avere problemi. Il compilatore presente nell'ambiente Windows SDK di Microsoft e' liberamente disponibile. Il link prima indicato ne scarica il setup.
Per quanto riguarda Traffic, nel corso usiamo la versione etichettata ev_1134 disponibile sul sito Bitbucket di Traffic, su cui appare etichettata come traffic_3.zip.
Ricordatevi di installare anche la libreria base2.
Verificate di aver letto con attenzione tutte le istruzioni di installazione che si trovano nel documento di testo (sheet) dell'esercizio della settimana 1 (usare quello dell'Anno 2012).
Si suggerisce di dedicare un po' di tempo alle pagine disponibili sul sito di documentazione di Eiffel nella sezione dedicata a EiffelStudio.
In particolare le pagine della sotto-sezione How To's vi guidano all'esecuzione dei compiti più comuni, quelle della sotto-sezione A Guided Tour vi presentano tutte le caratteristiche importanti dell'ambiente (studiate con particolare attenzione quelle relative a Running and debugging), e quella della sottosezione Reference contengono la descrizione dei vari componenti dell'ambiente.
L'esame di questo insegnamento consiste nello svolgimento di una prova scritta, con sua eventuale discussione orale. Per gli studenti del Corso di Laurea Magistrale (che devono aver inserito questo insegnamento nel loro piano di studi con 8 CFU) è previsto anche lo svolgimento di un progetto individuale di sviluppo di un programma in Eiffel.
La prova scritta è costituita da esercizi e domande sull'intero programma del corso. L'eventuale discussione orale ha l'obiettivo di chiarire la valutazione dello scritto ed investigare aspetti del programma sui quali il docente ritiene opportuno, a sua discrezione, un approfondimento del livello di prepararazione dell'esaminando.
Gli Appelli d'Esame per la sessione regolare si svolgeranno nel periodo indicato sul sito del Corso di Laurea secondo il calendario di dettaglio che verrà pubblicato sul sito del Corso di Laurea. E' necessario prenotarsi on-line all'indirizzo http://delphi.uniroma2.it. Gli studenti del Corso di Laurea Magistrale (e solo loro!) devono invece inviare una mail al docente.
L'esame può essere sostenuto o nella sessione regolare di esami (giugno-luglio) o nelle due sessioni di recupero (settembre e gennaio-febbraio).
Esame del 18 giugno 2013Esame del 16 luglio 2013
Esame del 24 settembre 2013
Esame del 24 febbraio 2014
In questo appello non verrà svolto orale. Pertanto, il VOTO FINALE indicato è il voto dell'esame di questo modulo.
VERBALIZZAZIONI
-->La discussione orale e la verbalizzazione verranno effettuate martedi 4 marzo 2014 alle 11:30 presso il mio ufficio.
Il normale orario di ricevimento nel periodo di svolgimento delle lezioni di questo corso è il mercoledi dalle 16 alle 18. Negli altri periodi è normalmente il giovedi dalle 13 alle 15, ma si prega di prenotarsi sempre, scrivendo per email (nardelli@mat.uniroma2.it) per fissare un appuntamento.
Ultimo Aggiornamento di questa pagina: 28 febbraio 2014 alle 00:45.
Prof. Enrico Nardelli
Università Roma "Tor Vergata"
Via della Ricerca Scientifica snc
I-00133 Roma, Italy
Tel. +39 06 7259.4204
Mob. +39 335 590.2331
Fax. +39 06 7259.4699
E-mail: nardelli@mat.uniroma2.it
URL: http://www.mat.uniroma2.it/~nardelli