CS 124, Fall 2011
Lab 7: Work on Project 2 (plus Final Project, Phase I)

In view of Fall Break, the due date for Lab 6 has been postponed to Friday. For this week's lab, you can continue work on Lab 6, or you can work on Project 2. However, there is one additional, non-programming exercise for this week: You should write two short proposals for final projects, as described later on this page. Here are the due dates for all this:

Style Rules For Subroutines

Here are a few new style rules, relevant to writing subroutines and using member variables. You are expected to follow these rules, starting with Project 2.

Final Project Proposals

One of the requirements in CS 124 is a final programming project, which will count for 10% of the course grade. The project will be due at the end of the semester. There is no assigned topic for the final project -- you will have to select a programming problem on your own. As a first step, you should write up proposals for two possible projects that you might like to work on. The proposals can be short -- a paragraph or two. The proposal should describe what the program will do and how the user will interact with it. For this first-stage proposal, you do not have to write about the design of the program or about the algorithms that you will use; that will come later.

We still have to cover many things that could be useful in your project, including objects, arrays, and various aspects of GUI programming. You should not limit yourself to programs that you know how to write at this time! (In the end, in fact, your program must include several classes, and it must use objects created from those classes. You won't even learn about such things until Chapter 5.) You should come up with ideas for things that you would like to work on, and not worry too much about whether the project would be feasible. You do not necessarily have to be original; if you have a project idea that interests you, you can propose it even if it's been done many times already by other people. Some possible ideas are given below, but you are not restricted to choosing from the list given here.

The point of this exercise is mainly to get you thinking about final projects. You will not be required to use one of the project ideas that you turn in next week, if you think of something better later.

Note that for the final project, you can choose to work with a partner. If you do this, your project must be more ambitious than a one-person project.

Remember that you should not give help to or receive help from any other member of the class (except for your partner, if you have one). You can get help from me or from the computer science TA's, but not from anyone else. You should not copy code from the Internet or from any other source, unless you get my permission to use that code as a basis for further development.

Although you will probably want to write a GUI program, a command-line program is also acceptable. You should try to design a program that will be useful, interesting, or fun. Write a program that you would like to use yourself. Here are a few ideas, but remember that you are not restricted to choosing from the list given here:

David Eck, for CPSC 225