Projects
Project 0 Project 1 Project 2 Project 3 Project 4 Project 5

Project Development

Projects in this course will be developed using the Eclipse Integrated Development Environment (IDE). Eclipse is designed to assist you when writing Java applications. Eclipse is available on the PCs located in the OIT labs. If you prefer to work on your own PC, the "Eclipse IDE for Java Developers" may be downloaded free of charge from www.eclipse.org. Note that Eclipse requires that you have installed the Java Runtime Environment (JRE) on your PC. Java 5 JRE is recommended and can be downloaded from Sun Microsystems. The latest version of Java is version Java 6. Although not officially recommended by Eclipse, Java 6 seems to cause no problems when using Eclipse to develop our projects. Java 6 is the version currently loaded on GL and will be used to compile and test your projects.

We will spend some time in one of the laba gettting acquainted with Eclipse, but you would do well to spend time using Eclipse on your own.

Project Policies

Each project description will designate the project as OPEN or CLOSED as defined below.

OPEN Projects

  1. You should try as much as possible to complete the project by yourself.
  2. You may get assistance from anyone -- TAs, instructors, fellow students, relatives, friends, etc.
  3. You must document all outside help you get as part of your file header comment.

This DOES NOT mean

  1. that you may copy anyone else's code
  2. have someone else write your code for you
  3. submit someone else's code as your own

CLOSED Projects

  1. You should try as much as possible to complete the project by yourself.
  2. You may get assistance only from the TAs or instructors.
  3. You must document all outside help you get as part of your file header comment.

You MAY NOT

  1. copy anyone else's code
  2. have someone else write your code for you
  3. submit someone else's code as your own
  4. look at someone else's code
  5. have someone else's code in your possession at any time

Project Design

Most projects will require the submission of a project design document one week prior to the project due date. The project design document consists of a set of questions you are required to answer about your project solution. Project designs are worth 10% of the project grade.

Program Compilation

The UMBC UNIX system runs two different versions of UNIX. The systems known as linuxl.gl.umbc.edu and linux2.gl.umbc.edu run the version of UNIX called Linux. The system known as solaris.gl.umbc.edu runs the version of UNIX called Solaris.

The project graders will use either linux1 or linux2 to compile and test your program. Therefore, ALL PROJECTS must compile and execute on linux1 and linux2.

All students must use the java compiler and JVM found in the directory /usr/local/bin. To check which compiler and JVM you are using, run the command which javac.
If the result is /usr/local/bin/javac then you're good to go.
If the result is /usr/bin/javac then follow the steps below.
  1. Open your .cshrc file (found in your home directory -- note the leading dot) with a text editor such as Xemacs.
  2. Add the following lines at the bottom of your file:
              alias javac /usr/local/bin/javac
              alias java /usr/local/bin/java
        
  3. Save your .cshrc file and exit the editor.
  4. Run the command source .cshrc (again, note the leading dot)
  5. Run the command which javac. The result should be javac: aliased to /usr/local/bin/javac
  6. Run the command which java. The result should be java: aliased to /usr/local/bin/java

If you develop your projects on your own PC, be sure that you are using javac version 1.5.x (aka Java 5) or 1.6.0.

The example below illustrates how to compile an test your code on GL. Let's suppose that you have completed project 1, that your code is in Project1.java and that you have included the statement package proj1; at the top of Project1.java as directed in the project description. Once you have completed development and have moved Project1.java to your GL directory,compile it using the command below (notice the "dot")

	javac -d . Project1.java
This command will create a subdirectory named proj1 (the name of the package) and place the file Project1.class in that subdirectory. To execute your code, use the command
	java proj1.Project1
from the directory that contains Project1.java.

NOTE, WARNING, ALERT: If the project is text-based, you can compile and execute your program from your PC at home or from any OIT lab. HOWEVER.... if the project is GUI-based you MUST run your program from a Linux machine in an OIT lab in order to test it on GL. You WILL NOT be able to execute a GUI-based project from your PC at home.

Project Submission

All projects will be submitted as .java files. Java requires that each class be found in its own .java file. The file which contains main( ) must be named for the project. For example, for Project 1, main( ) would be found in Proj1.java.

Project Grading