CSCI 134 - Digital Computation and Commuication
An Introduction to Computer Science
Home | Lectures | Labs | Homework | Documents | CS Dept | Williams Home

Lab Style Guide

The way you present your program is just as important as having a correct program. While having good comments or good variable names will not affect the correctness of your program, it will make it easier to read your program. It is important that others be able to understand your code so that they can modify your code if they have to. A significant component of your lab grade will be determined by your programming style.

This is a guide to help you better understand what we are looking for when we look at your labs. As the semester progresses there will be steeper penalties for styling mistakes. So, get into the habit of writing good labs from the beginning. After writing your lab be sure to look over your code and your style.

Commenting

Comments are extremely important. Take some care to write accurate yet concise comments.
You should write comments for:
  1. Class (Program): At the top of each class, you should write your name and a brief description of what the class is for. If you decide to do more than the assignment requested, you should describe these "extra" features in the program under the class description. Sometimes it's hard to tell a bug from a feature.
  2. Methods: Above each method heading there should be a brief description of what the method does. You should also describe what each parameter means and what the return result means. If the method code is simple you do not need to comment in the method body. If the method body is complicated, you might want to add some comments to certain areas that you deem to be complicated. Be careful not to overcomment!
  3. Variables and constants: In general, variables and constants should all have comments as to what the variable is used for. For example a good comment for your the variable JTextField messageNum might be: // The number of the email message to retreive (rather than, say, // message number). Frequently, several closely related variables or constants can be grouped together under the same comment.

Blank Lines

Blank lines are used to delineate different areas of the code. The instance variable declarations at the top of your program should be separated from the header of the class and the header of the first method. There should always be a blank line between methods. It is advisable to break up long method bodies and long declarations into logical pieces. Always start a new line after a semicolon.

Naming Literals

Do not use magic numbers in your method bodies. A magic number is a numeric constant embedded in code, without a constant definition. Any number except -1, 0, 1, and 2 should probably have a name that gives the number meaning. For example, rather than writing

    toServer = new NetConnection( serverName, 80 );

associate a final instance variable with the number:

    private final int WEB_PORT = 80;

and use that variable in place of the number:

    toServer = new NetConnection( serverName, WEB_PORT );

Names

You should always choose names that suggest the meanings of the things being named. If the purpose of a method is to remove all the blanks from a string, then a good name for that method is removeBlanks. If there is a variable of type int that is used to refer to the total number of message that have been sent, then a good name would be messagesSent or messageCount.
By convention, constants (indicated by "final" in Java) are all capital letters, classes begin with uppercase, variable and method names begin with lowercase, while uppercase is used to start new words in multi-word names.

Instance variables should always be declared to be private. Whenever possible, names should be declared as local variables rather than instance variables. Instance variables should only be used when a value must be saved for use after the execution of a method or constructor is completed.

Format

Your program should be formatted as neatly as possible. The statements and declarations placed in a method's body should be indented about 4 spaces more than the method's header. Similarly, the bodies of while loops, and if statements should be indented slightly compared to the headers of these constructs. Sequences of statements that do not contain if statements, while loops or other control constructs should all be indented by the same amount.