Progetto per il corso di
Laboratorio di Programmazione 2
A.A. 2012/2013
Testo del progetto
Si scriva un'applicazione Java per gestire un'agenda elettronica. L'agenda deve permettere di:
- inserire un nome
- cancellare un nome
- visualizzare l'elenco completo dei nomi inseriti
- ricercare un nome
Si definisca un'interfaccia Nome, che contenga i dati che si vogliono memorizzare. L'agenda deve gestire qualsiasi oggetto che implementi l'interfaccia Nome.
I nomi inseriti vanno divisi in 3 categorie: persone generiche (di cui si conosce solo il nome e il telefono), conoscenti (di cui si conosce in aggiunta l'indirizzo) ed amici (di cui si conosce anche la data di nascita). I conoscenti sono una sottoclasse delle persone generiche, e gli amici sono una sottoclasse dei conoscenti.
I dati devono essere memorizzati in una apposita struttura dati (ad esempio ArrayList o Vector). Nel caso in cui la ricerca di un nome fallisca, l'applicazione deve generare un'eccezione di tipo NomeNonTrovatoException, e gestirla opportunamente.
Informazioni
Il progetto può essere svolto in piccoli gruppi di al più 2 persone.
Il software deve essere funzionante. Il testo del progetto è volutamente generico, e tutto ciò che non è specificato nel testo può essere liberamente implementato.
Il codice sorgente dell'applicazione deve essere inviato per email al docente all'indirizzo scozzari@sci.unich.it almeno cinque giorni prima della prova scritta a cui si intende partecipare. L'email deve specificare i partecipanti al progetto (nome, cognome e matricola). Il progetto è valido per tutte le sessioni dell'A.A. 2012/2013 (anche nel caso in cui si voglia ripetere lo scritto, non occorre presentare un nuovo progetto).
In caso di valutazione insufficiente, è necessario presentare un nuovo progetto nell'appello successivo. Lo svolgimento del progetto è obbligatorio per sostenere la prova scritta del corso di Laboratorio di Programmazione 2.