Picture of Cover

Robot Examples
Robots Documentation
Demos of becker.xtras
Java Documentation
Favorite Tools
Change Log
Printer Friendly Page

Software to Support Robots

The teaching philosophy supporting Robots depends heavily on providing students with interesting classes that they can use until they are prepared to write their own. These interesting classes are contained in a library to be downloaded from the downloads page.

The library includes:

A package implementing Karel the Robot, the core set of classes used in the early part of the textbook.
A package containing useful utilities. Everything from a simplified DateTime class to a sleep method that can be used without exceptions to simplifications and generalizations of Observable to use in the Observer pattern.
A package with a number of subpackages intended to be used in interesting assignments. Most of the packages contain a graphical user interface and a Java interface. Students write a class implementing the Java interface. A simple main method then uses the provided GUI to make a satisfying program. Subpackages include
A GUI for a simple combination lock.
Required Skills: instance variables, parameters.
A GUI for a AM/FM radio. Students extend a very simple Radio class with methods to tune up or down, seek up or down, and remember preset frequencies. The GUI requires two instances of ITuner, one for the AM band and one for the FM band.
Required Skills: instance variables, parameters, looping, inheritance.
A GUI to graph functions. Students implement one of three interfaces, allowing for varying levels of complexity.
Required Skills: vary from a minimum of methods with parameters for the simplest function to using arrays (including passing arrays as parameters and returning them from methods) for a complete polynomial.
A GUI for a student mark recording program.
Required Skills: 1D and 2D arrays.
A GUI for an image transformation program. Students implement a Java interface to manipulate the images as 2D arrays.
Required Skills: 1D and 2D arrays.

Contact: bwbecker@learningwithrobots.com.