Setup Instructions

This course includes several labs for furthering your new skills. Labs involve writing code, analyzing code, and refactoring code. Each lab will be allotted on average one hour, therefore the activities and the domains have been reduced to a bare minimum.
The skills you’ll develop in this course, such as test-driven development, refactoring, and the classification of code smells, are all transferable across object-oriented languages. Therefore, the lectures and the labs are all given in the language that appears to be the most widespread and understood among developers, Java. Only the basic constructs of Java are used in the course. Moreover, you will be encouraged to work on all the labs in pairs so that even if your Java is rusty, your pair might help you.

Important: Update to Lab Materials

Well, we have our first bug fix - there is a bug in one of the lab exercises! The zip file containing the lab exercises has been updated. If you have already installed the lab exercises, the corrected file is available by itself at Lab-LabelMaker-SolutionAfterLongParameterList-Java.


All the labs require Eclipse 3.3 or higher, and JDK 1.5 or higher.

Eclipse IDE for Java Developers is an appropriate choice.

Note:  Eclipse may not self-install.  In that case, merely unpack the zip file into an appropriate place, like \Program Files\Eclipse on Windows, or /usr/local/lib/eclipse on linux or /Applications/eclipse on the Mac. 

Mac Users: click the appropriate Download link from

For linux or Mac systems, it might also be helpful to put in a symbolic link, such as
    ln -s /usr/local/lib/eclipse/eclipse /usr/local/bin/eclipse        # linux
    ln -s /Applications/eclipse/eclipse /usr/local/bin/eclipse        # Mac
in order to put the executable on the shell search path.

For Java, make sure you select a JDK (Java Development Kit) rather than JRE (Java Runtime Environment – which does not include the Java compiler)

At this point in time, JDK 6 (Update 22) is appropriate.

Download the labs

Download the file   You will need a password to download the labs; this password is emailed to all registered attendees; contact registrar@gbcacm if you have not received it.

Now unzip this file to a new directory, c:\courseLabs. This directory will now contain several archives (zip files) of lab code. You will see that most labs have more than one such archive, typically the problem code you will work on and instructor solution code you should examine afterwards.   For instance, the Appointment Calendar lab has two archives: and

Setup each lab archive in Eclipse

You do not need to unzip lab archives. Instead, use Eclipse’s “Import” feature to read the zip files and set them up in the Eclipse workspace. For each of the archives, do this:

  • In Eclipse, select File | Import...
  • In the dialog that opens, expand the “General” dropdown and choose "Existing Projects into Workspace".
  • A new dialog box opens that includes two radio buttons.
  • Choose the “Select archive file” radio button.
  • Click “Browse…” and locate c:\courseLabs.  Select the archive you wish to import.
  • Click “Finish”. Eclipse will import this archive and set it up in the workspace. You should now be able to see this project in the Package Explorer or Navigator view.