Technical Program
  Invited Speakers
  Technical Papers
  Practitioner Reports
Educators' Symposium
Doctoral Symposium
Student Research Comp.
Turing Lecture
Social Events
Week at a Glance
Final Program (1.5M .pdf)

Find in Program


view, help

"Teaching Java: An Eventful Approach"
Object-Oriented Programming, Systems, Languages and Applications
Home    Program    Housing & Transportation    Registration    Submissions    Wiki    Maps
  > Technical Program > Tutorials > All Tutorials

 : Wednesday Afternoon Tutorials (1:30 - 17:00) : Languages and Development : Wednesday

Teaching Java: An Eventful Approach

Meeting Room 9
Wednesday, 13:30, half day


Kim Bruce, Williams College:  Kim B. Bruce is Frederick Latimer Wells Professor of Computer Science at Williams College, where he has been teaching Computer Science since 1977. He is co-author of the forthcoming introductory text, Java: An Eventful Approach. Bruce has contributed to the Liberal Arts Computer Science Consortium (LACS) curricula in 1986, 1996, and 2004, as well as Curricula '91 and 2001. He is the author of Foundations of Object-Oriented Languages: Types and Semantics, published by MIT Press. He also co-chaired the Workshops on Pedagogies and Tools for Assimilating Object-Oriented Concepts for several years.

Tutorial number: 48

As many have learned, teaching a CS1 course in Java requires an entirely new approach. Because it is an object-oriented language, it is difficult to teach in the style used for imperative languages like Pascal, C, and C++. Many have proposed teaching Java in an objects-first way, but others have complained that too many concepts must be introduced before students can understand the construction of classes and objects. The objective of this workshop is to introduce an approach to teaching Java that we have developed that overcomes these problems.

In this tutorial we describe an objects-first approach to teaching Java that introduces event-driven programming in the very first programming examples, introduces concurrent threads early, and uses graphics and animation extensively.? We show how these seemingly advanced topics can be presented so that they are easy for introductory course students to grasp.? We also show how our approach exposes students to object-oriented programming techniques more thoroughly than is possible in more traditional approaches.? Our approach is supported by materials developed with NSF funding including extensive course notes, laboratory exercises, the Objectdraw library, and a textbook to be published by Prentice-Hall in 2004.

Intermediate: Knowledge of basic Java programming. Experience teaching an introductory programming course is helpful, but not necessary.