| | | corso | | | |
Interazione Uomo-Macchina: Programmazione di Interfacce Grafiche
(Corso di Laurea in Informatica (quinquennale))
Codice: | 4I052 | Crediti: | 6 | Semestre: | 2 | Sigla: | IUP | |
Docente
Prerequisiti
Obiettivi di apprendimento
Introdurre le tecniche e gli strumenti per la programmazione di interfacce
grafiche e per lo sviluppo di applicazioni sul Web.
Descrizione
Il corso presenta le tecniche e gli strumenti per la programmazione
di interfacce grafiche e per lo sviluppo di applicazioni sul Web.
Si studiano le tecniche di programmazione specifiche in ambienti grafici:
programmazione ad eventi e programmazione ad oggetti.
Si introducono i linguaggi ad oggetti C++ e Java, l'organizzazione e l'uso
di ambienti grafici a finestre, la progettazione e realizzazione di
applicazioni interattive sul Web.
Il corso fa parte del minor
Multimedia ed ha come prerequisito il corso di
Fondamenti di Computer
Graphics che si tiene nel primo semestre.
English Description
The course presents the techniques an tools for programming graphical
interfaces
and for developing Web applications.
The course illustrates the specific programming techniques used in graphics
applications:
event programming and object-oriented programming.
The cource introduces the object-oriented languages C++ and Java, the
structure and use of
graphical window environments, the design and implementation of interactive
Web applications.
The course belongs to the minor
Multimedia and has as prerequisite the course
Fondamenti di Computer
Graphics which is held in the first semester.
Graphics
Programma
Tecniche di programmazione
- Progetto ed implementazione di interfacce grafiche di utente.
- Programmazione ad oggetti.
- Introduzione al C++.
- Framework e pattern.
Sistemi a finestre
- Modello di programmazione a eventi: Event Handling, CallBacks,
Resources.
- Microsoft Windows.
- Macintosh Toolbox.
- X Windows.
- Window management.
Programmazione Web
- Ipertesti e linguaggi ipertestuali.
- Architettura del World Wide Web.
- Programmazione Java e AWT.
- Programmazione JavaScript.
- Programmazione CGI.
- Aspetti multimediali: audio, video, animazione.
- Protocolli di rete per applicazioni multimediali.
Ore lezione: | 25 | Ore esercitazione: | 15 | | | |
Bibliografia
- K. Arnold, J. Gosling, The Java Programming Language,
Addison Wesley, 1996.
- D. Flanagan, Java in a Nutshell,
second edition, ÒReilly & Associates,
1997.
- D. S. Siegel, Creating Killer Web Sites, second edition,
Hayden Books, 1997.
- SamsDevGroup,
HTML, Java, CGI, VRML, SGML Web Publishing Unleashed,
Sams Net, 1996.
- Kruglinski, Sheperd, Wingo, Programmare in Visual C++,
5 edizione, Mondadori Informatica, 1998.
- S. Holzner, Visual C++ Programming, Brady, 1993.
- J. Richter, Advanced Windows, Microsoft Press, 1995.
- G. Attardi, A. Amato,
Programmazione di Interfacce Grafiche,
Università di Pisa, 1997.
- F. B. Brokken, K. Kubat,
C++ Annotations,
ICCE, University of Groningen, 1998.
- Peter Müller,
Introduction to object-oriented programming using C++,
Globewide Network Academy, 1997.
Esame
L'esame finale consiste nella discussione di un progetto. La scelta
dell'argomento del progetto è lasciata allo studente. I
requisiti sono che si tratti di un progetto in cui ci sia un utilizzo
rilevante della grafica e che sia realizzato singolarmente dallo
studente. Il progetto può anche essere un'interfaccia grafica
ad una applicazione preesistente o scritta da altri, ma per l'esame
verrà valutata solo la parte grafica. Il progetto deve
essere realizzato in un linguaggio di programmazione ad oggetti
(C++ o Java); vivamente sconsigliati VisualBasic e Delphi.
Tra i temi svolti in passato ci sono stati:
- CoolTalk: lavagna condivisa via rete (selezionato tra i top
15% JAR)
- strumenti di visualizzazione 3D e rendering
- giochi animati
- strumento di visualizzazione di grafici e bar chart 3D
- sistema di calcolo delle rotte veliche
- interfaccia ipertestuale ad un sistema di documentazione
- morphing di immagini
- realizzazione di una libreria grafica
Durante il semestre verranno assegnati degli esercizi da svolgere,
il cui completamento verrà considerato nella valutazione
finale.
Laboratorio
Per il corso è disponibile un laboratorio dedicato formato
da due PC Pentium MMX con Windows NT.
Esercitazioni
Materiale
per le esercitazioni di laboratorio.
Materiale Utile
Modalità di esame
Orale basato sulla discussione di un progetto