



Next: Concurrent and Distributed Systems Up: Michaelmas Term 2009: Part Previous: Computer Design Contents
Further Java
Lecturers: Dr A.R. Beresford and Dr A.C. Rice
No. of practical classes: 5 2-hour sessions
Prerequisite course: Programming in Java
Aims
The goal of this course is to provide students with the ability to understand the advanced programming features available in the Java programming language, completing the coverage of the language started in the Programming in Java course.
Practicals
- Generic classes and communication via TCP/UDP.
- Reflection and serialisation.
- Class loaders.
- Threads and synchronisation.
- Transactions and weak references.
Objectives
At the end of the course students should
- understand different mechanisms for communication between applications
and evaluate their trade-offs in different scenarios;
- understand how Java Generics improve software usability and
readability;
- be able to write a custom class loader;
- understand the need for and implementation of concurrency control;
- understand the concept of transactions and their application in a
range of systems.
Recommended reading
* Lea, D. (1999). Concurrent programming in Java. Addison-Wesley (2nd ed.).
Bracha, G., Gosling, J., Joy, B. & Steele, G. (2000). The Java language specification. Addison-Wesley (2nd ed.).
http://java.sun.com/docs/books/jls/
Bacon, J. & Harris, T. (2003). Operating systems or Bacon, J. (1997)
Concurrent systems (2nd ed.). Addison-Wesley.




Next: Concurrent and Distributed Systems Up: Michaelmas Term 2009: Part Previous: Computer Design Contents