tutorials
15 sunday morning Waterfront Centre Hotel, Malaspina Room
15T tuesday afternoon Pan Pacific Hotel, Gazebo I/II

Introduction to Concurrent Object-Oriented Programming in Java

David Holmes, Microsoft Research Institute, Macquarie University; and Doug Lea, State University of New York

Concurrent programming has mostly been the domain of systems programmers rather than application developers, but Java's support of concurrency has enticed many to try their hand at concurrent applications. However concurrent programming poses many traps for the unwary. This tutorial demonstrates various design patterns and techniques for constructing concurrent applications in Java and for managing that concurrency. On the language side we look at Java's mechanisms to support concurrent programming. On the design side we look at object structures and design rules that can successfully resolve the competing forces (safety, liveness, efficiency, coordination, reusability) present in concurrent software design problems.

Participants will acquire comprehensive knowledge of the concurrency support provided by the Java language and core classes, as well as insight into some threading issues within the Java libraries. They will be exposed to a range of design approaches to assist them in developing safe, concurrent, applications in Java and other object-oriented languages.

Attendee Background: This tutorial targets anyone involved, or planning to get involved, in the development of concurrent object-oriented applications. It is assumed that the attendee is familiar with basic OO concepts and has a working knowledge of the Java language.

David Holmes is a Ph.D. student with the Microsoft Research Institute at Macquarie University, Sydney, researching more adaptable, flexible, and reusable approaches to synchronisation in concurrent object-oriented programs. He has a degree in Computer Systems Engineering and practical experience with concurrent programming through work on operating systems, distributed systems and real-time embedded systems, within a university environment.

Doug Lea is a Professor of Computer Science at the State University of New York at Oswego. He is author of the Java Series book "Concurrent Programming in Java: Design Principles and Patterns", co-author of the book "Object-Oriented System Development," and the author of several widely used software packages, as well as articles and reports on object-oriented software development.

Suggested Readings:


Other tutorials in the Java thread are:

for beginners (yellow):

Tutorial 25: From C++ to Advanced Java in 1/2 day
Tutorial 40: Java from UML
Tutorial 53: A Practical Guide to Java on the Server
Tutorial 15T: Introduction to Concurrent Object-Oriented Programming in Java

for intermediates (option 1- green):

Tutorial 26: Distributed Java Applications
Tutorial 39: Designing Concurrent Object-Oriented Programs in Java
Tutorial 52, 52T: Java Beans: Specifications, Design and Test
Tutorial 53: A Practical Guide to Java on the Server

for intermediates (option 2- grey):

Tutorial 16: An Introduction to the Java Foundation Classes (JFC)
Tutorial 26: Distributed Java Applications
Tutorial 40: Java from UML
Tutorial 52, 52T: Java Beans: Specifications, Design and Test
Tutorial 53: A Practical Guide to Java on the Server

 

Tutorials
by Title
Tutorials by
Category
Tutorials
by Thread
Full Description
of all Tutorials
Tutorial
Availability

OOPSLA'98 Home
Last edited 22 September 1998 14:05:29