Useful core language links
Here are some resources on Java that we've drawn together from the course materials and elsewhere.
Core language elements
Here's a quick link to the API Docs
More advanced language elements
Cloning objects (copying complex objects).
RXTX (how to connect to hardware using serial ports, e.g. scientific equipment)
Java2D (better image and drawing manipulation).
JavaFX (better GUIs).
Java Webstart (a way of getting your programs to run over the web)
JavaBeans (a way of allowing other people to develop programs)
Servlets (programs to produce web pages)
JavaServer Pages (programs to embed data in webpages)
bitshifting by Kushal Paudyal
Image streams and filters chapter from O'Reilly
Helpful for developers
The best introductions are these articles by Stephen Palmer:
You might also like to check out...
The best book on UML is:
Martin Fowler and Kendall Scott (2003),
Addison Wesley; ISBN: 0321193687 (~£24)
Although not specifically a Java book, this also contains a lot of good advice about object orientated programming.
Good UML software includes:
The user experience
Classic paper on how users learn and use software:
Carroll, J. M., & Rosson, M. B. (1987). The paradox of the active user (pdf). In J.M. Carroll (Ed.), Interfacing Thought: Cognitive Aspects of Human-Computer Interaction. Cambridge, Mass: MIT Press (pp. 80-111).
Example paper on designing for mouse-driven GUIs:
Berkun, S. (2000) Fitts's UI Law Applied to the Web Microsoft Research.
IBM Design : Site with details of good design policy and testing usability User design consultation processes at IBM.
Smashing Magazine: Web and App design.
Ask Tog: User interface design site.
Ignore the Code: Lukas Mathis' interaction design blog.