Java: An Eventful Approach

As many have learned over the past several years, 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 even 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 at Williams College that overcomes these problems. Our approach is supported by materials developed with NSF funding. These include extensive course notes, laboratory exercises, the Objectdraw library, and a textbook to be published in 2004.