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:
becker.robots
- A package implementing Karel the Robot, the core
set of classes used in the early part of the textbook.
becker.util
- 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.
becker.xtras
- 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
becker.xtras.comboLock
- A GUI for a simple combination lock.
- Required Skills: instance variables, parameters.
becker.xtras.radio
- 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.
becker.xtras.grapher
- 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.
becker.xtras.marks
- A GUI for a student mark recording program.
- Required Skills: 1D and 2D arrays.
becker.xtras.imageTransformation
- 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. |