Gridworld Case Study
Case studies are a teaching tool used in many disciplines. They have been a part of the AP Computer Science curriculum since the 1994–95 academic year. Case studies give students an opportunity to:
- Read source code written by someone else.
- Work with a program of significant length.
- Become familiar with good coding, design, and documentation practice.
- Learn about testing in a non-trivial context.
- Think through design and implementation tradeoffs.
- Experience an approximation of the master/apprentice relationship.
The GridWorld case study provides a graphical environment in which students can experiment with different types of objects and observe how programming changes will affect the behavior of those objects. It is a required part of the AP Computer Science A curriculum. (Computer Science A students are expected to be familiar with the material in Parts 1–4 of the case study narrative.)
The case study consists of a narrative and a zip file containing the program code and documentation. There are three folders in the zip file: the framework folder that contains the black box code for the graphical environment; the projects folder that contains code for which students are responsible; and the javadoc folder that contains the documentation for GridWorld. The index file in the javadoc folder can be used as a starting point for viewing the documentation.
Please note that if you have a version watermark such as "0.96" displayed in your output window, you do NOT have the final version of the code installed. To correct this problem, download the Zip File below and follow the instructions in the Installation Guide, being sure to install the current version of the jar file.
- Code (238KB zip)
Student Manual (Narrative and Appendixes as a Single Document)
- Student Manual (633KB pdf)
Narrative as individual files:
- Part 1: Observing and Experimenting with GridWorld (211KB pdf)
- Part 2: Bug Variations (285KB pdf)
- Part 3: GridWorld Classes and Interfaces (156KB pdf)
- Part 4: Interacting Objects (224KB pdf)
- Part 5: Grid Data Structures (150KB pdf)
Support material for GridWorld