Difference between revisions of "Team Mighty Morphin Coding Rangers - OOP344"

From CDOT Wiki
Jump to: navigation, search
(Issues)
m (Dachuan)
Line 172: Line 172:
 
===Dachuan===
 
===Dachuan===
 
Placing void in Function(void) for Borland is important. It has gotten me frustrated a few times. <br />
 
Placing void in Function(void) for Borland is important. It has gotten me frustrated a few times. <br />
bio_putint() doesn't seem to work under VCC?
+
bio_putint() doesn't seem to work under VCC now?
  
 
===Cong===
 
===Cong===

Revision as of 23:56, 9 February 2010


OOP344 | Weekly Schedule | Student List | Teams | Project | Student Resources

A1 Function assignment

Last Name Name Branches in workspace Simple Function(s) Complex Function(s)
Chau Sunny ScsC workspace bio_move bio_edit
Cheung Christopher ~ bio_clrscr ~
Huang Dachuan Dachuan workspace bio_flush

bio_displayMenuItem

John-Sandy Anastasia ~ bio_cols ~
Oberes Donna Daoberes workspace bio_rows - Committed to trunk
bio_getch
bio_edit
Wang Cong ~ ~ bio_display/bio_displayflag
Wang Shengwei Shengwei workspace bio_putstr - Committed to trunk

bio_menuItem

Xue Yong Yong workspace bio_putch bio_flag()

SVN Repository

oop344_101rep4

Coding Style

The Coding Rangers had their first somewhat informal meeting on Jan. 21 to determine a uniform coding style. They came up with the following:

  • Comment as much as you can using /* ... */.
    • At the top of every file, include your name, the filename, and the purpose of the file.
    • Comment on what a function is supposed to do before the function definition.
  • Change to newline once you reach column 80. Nothing to be typed beyond column 80!
  • When naming variables,
    • use single letters (like i, j, a, or v) for counters only;
    • assign the variable a name that best describes what it is used for (but please don't make it too long);
    • and separate words with caps.
      Eg. noOfOrders, not nooforders
  • When naming a function, name it according to what it is supposed to do.
    Eg. void updateDelivery, int setInitialValue, not void Deliveries, int InitialValues
  • Class names must begin with a capital letter
  • Declare each variable at the beginning of blocks.
  • Eg. main () {

       int length = 0; // correct, at the beginning of the block
       ...
       ...
       int flag = 1; // incorrect, at the middle of the block
       if ( length = 0) {
           int i = 0;  // correct, at the beginning of the block
           ...
           ...
           bool valid = true; // incorrect, at the middle of the block
       }
       return 0;
    

    }


  • Declare each variable in a line by itself. It is easier to comment a variable this way. Do not use commas to separate the variable names if they have the same data type.
  • Eg. correct int i; //To count the number of times in for-loop int j;

    int k; //To count another variable

    Eg. wrong int i,j,k; //How do I separately comment

    int i; int j; int k; //the variables here?

  • Type four (4) spaces over for every block of code. (This is as opposed to tabbing.) For example:
  • main () {

       int x; //Notice the four spaces over 
    int y;

    for (x = 0, y = 10; x < 10 && y >0; x++, y++) {
           printf("x is %d, y is %d\n", x, y); 
    printf("The sum of x and y is %d\n", x + y);
    if (x == 5)
    printf("We've reached the halfway point!\n"); //Moved four spaces over again }

    printf("Hello, world!\n");

    }

  • Only main () will start at column 1. Tab every block of code four spaces over.
  • Include an empty line after the declaration of variables (see above example).
  • When using operators, make sure to have a space between the operands and the operator for readability.
    Eg. i = 0;, not i=0;
  • For keywords such as while, for, if, else, put a space after the keyword and the expression following it.
    Eg. if (x == 0) is correct; if(x == 0) is incorrect
  • When using brackets, put the opening bracket on the same line as the function or expression that opens it.
    Eg. CORRECT:
    int setSafeEmptyState {
    ...
    }

    INCORRECT:
    int setSafeEmptyState
    {
    ...
    }

Issues

Each member will post updates about their progress on the project. Triumphs, conflicts, and blood and tears will go here.

Sunny

However, a new "Error E2040 C:\Borland\BCC55\Include\conio.h 1: Declaration terminated incorrectly" has appeared.
I am running into this error "Error E2209 biof.c 32: Unable to open include file 'conio.h'". Know a way to fix this? Fixed!

Donna

Feb 4, 2010 - Committed my bio_rows to trunk. I ran into a few troubles while compiling, the biggest being Borland. Never used this compiler before. The frustrating part, after fixing all of my mistakes, is forgetting to take note of what went wrong so that I know how to fix it in the future. However, as far as I can recall, some of the biggest problems were:

  • Having to include -IC:\Borland\BCC55\Include \LC:\Borland\BCC55\Lib during compilation.
  • Empty parameters in the function prototypes (in biof.h) actually needed the word "void" rather than just leaving them empty. (I just checked the function prototypes in the biof.c file, and some of them are empty. However, fixing just the .h file was enough). For some reason, they're as good as being not prototyped.

There was something hinky about visual c++, too, but I forget now. I'll keep it in mind for next time.
As for the actual coding, I forgot that the word "struct" has to be included when creating a struct. (struct text_info x;).

Shengwei

Just to reserve a space. :)

Dachuan

Placing void in Function(void) for Borland is important. It has gotten me frustrated a few times.
bio_putint() doesn't seem to work under VCC now?

Cong

i really appreciate Sunny's help, my code works now.And i understand what link problem is.

Cgcheung

Not really an issue but my own mistake. A reminder to include "-l ncurses" to the compile line in linux >_> .

Member list

Last Name Name Seneca Username Section Blog Url IRC Nick SVN ID My Contributions Role Alternative Email Address
Chau Sunny schau5 B Blog ScsC TBA Contributions The Experienced Guy ~
Cheung Christopher cgcheung B http://rocketpants.blog.ca/ Rocketpants n/a Contributions Team Contact ~
Huang Dachuan dhuang B http://hdc23.wordpress.com/ Da_Truth dhuang18 Contributions Team Contact dachuan.huang@gmail.com
John-Sandy Anastasia ajohn-sandy B http://anastasiasaurus.blogspot.com annieJS ajohn-sandy Contributions Team Contact annieJS@gmail.com
Oberes Donna daoberes B Blog Donna_Oberes n/a Contributions De-Facto Leader ~
Wang Cong Cwang84 A http://wangcong422.blogspot.com/ cwang84 n/a Contributions Team Contact ~
Wang Shengwei swang94 A http://shengwei-seneca.blogspot.com/ Shengwei swang94 Contributions Team Contact wangshengwei.ca@gmail.com
Xue Yong yxue11 B http://yxue11.blogspot.com/ yxue11 n/a Contributions Team Contact ~
~ ~ e-mail all @ once ~ ~ ~ ~ ~ ~ ~