Design Your Program

Go to: Design Tool

Overview

The most important single step in writing a computer program is creating a good design. This begins with laying out in outline form the broad structure of the code, which our Design Tool can help with, and then specifying the major data components (which we are not yet able to help with).

In the Design Tool you first give a name to your program and choose whether your implementation is English or Java or our GameEngine, then a short description of its purpose and/or function. You can later switch from English to Java or back, but the Game Engine involves a different top-level structure, so if you later change your mind, you will need to start over with a new name. The GameEngine option pre-fills several event layers, but you can (and probably should) change this initial structure to better fit the program you are designing.

If you choose an existing program name, the Design Tool will open up the most recent Design for that program.

The program name becomes the "Subroutine name" of the first level, under which you can list two to four major components. Each time you click the "Update" button, it will make new subroutines at new levels for all the new components you added.

You can change the name of a subroutine, but if you don't also change its name up the hierarchy or add it somewhere else, it will become a (detached) "orphan" until you connect it back into the structure, or delete the orphans using the checkbox which appears on the right when there are one or more orphans.

If you move (cut and paste, or delete and retype) a component from one subroutine to another, the next update may restructure your outline to make it more hierarchical.

If you choose a program name for which we have a recommended structure, there will be a checkbox on the right, so that if you have trouble creating your own design, you can replace it with our recommended Design. But you should always try your own first.

Each time you update your Design, the Design Tool will also create at the bottom of the page, the subroutine hierarchy for the chosen language, which you can copy and paste into your IDE.

When you are satisfied with your Design, you should click the yellow "Done" button, and a Mentor will review your design and then either advance you to the coding phase, or else work with you to improve your Design.

Click here to begin (or continue with your latest existing design work).

Rev. 2023 February 1