General information
Learning outcomes
On completion of this course, students will be able to:
design and implement an interactive application using Java and industry-standard development toolkits, libraries and protocols for user interface development
design, extend and program a multi-user interactive application
develop interactive applications that integrate networked sensors, actuators, and computational components
plan and implement practical projects within the field of
human-computer interaction, as well as conduct supervised
research in the field.
Course Goals
Understanding of the architectural and computational principles behind the development of the 2-dimensional graphical user interface
Experience in modern GUI toolkits and development environments
Exposure to a variety of advanced topics for developing interactive systems, including "off the desktop"
Class Policies and Grading
You can find the class policies at
Class Policies and Grading page
Programming Resources
-
Programming is done in Java using the Eclipse IDE. You can use any IDE you like but you must use Java.
- We will be using a free online programming text: Introduction to Programming Using Java, Sixth Edition
- As we will be doing programming assignments using the Java Swing GUI toolkit, understanding the nuts and bolts of Swing programming may be useful. Thus, I'm recommending Java Swing, Second Edition (Loy, Eckstein, Wood, Elliot, and Cole; O'Reilly Press) as a good book on Swing with broad coverage of the toolkit. If you don't want/need the book, you still may want to take a look at some of the links and documents in the Resources section of this page.
- An excellent Java book is Thinking in Java by Bruce Eckel. Free electronic versions of this v4 book are available here, complete with code snippets.
- Another good book (also not required, but useful if you
want to do fancy Swing stuff either in class or later on your own)
is Swing Hacks (Marinacci and Adamson; O'Reilly Press). Lots of
nifty tricks. Another, more recent book in a similar vein that I haven't yet checked out in as much detail is Filthy Rich Clients by Haase and Guy.
-
Additional required readings for each class will be provided electronically and posted on the course syllabus. In addition, some supplemental readings will be provided. These readings will not be required but may prove useful as background material for students.
Resources,Documents, and Software