Difference between revisions of "Weekly Schedule 20111 - OOP344"

From CDOT Wiki
Jump to: navigation, search
(Resources)
(Undo revision 63772 by Fardad (Talk))
 
(95 intermediate revisions by 17 users not shown)
Line 1: Line 1:
 
{{OOP344 Index | 20111}}
 
{{OOP344 Index | 20111}}
  
= OOP344 -- Weekly Schedule 20111=
+
= OOP344 -- Weekly Schedule 2011/1 (Winter Semester)=
  
 
== Week 1 - Jan 9 ==
 
== Week 1 - Jan 9 ==
Line 13: Line 13:
 
** IRC
 
** IRC
 
** Code Repository
 
** Code Repository
* 144/244 review
+
**: [[Svn rules - OOP344 20111|SVN rules for semester]]
  
 
=== To Do ===
 
=== To Do ===
Line 19: Line 19:
 
Due date: January 15th , 23:59 (11:59pm)
 
Due date: January 15th , 23:59 (11:59pm)
  
Form a team of 5 students and select a name for your team. (members can be from both sections of oop344)
+
Form a team of 3 to 5 students and select a name for your team. (members can be from both sections of oop344)
  
 +
# Create an account on this wiki, (please use your seneca email id for your wiki id)
 
# Join the IRC by [http://www.wikihow.com/Register-a-User-Name-on-Freenode registering your nickname on freenode] server and joining the #seneca-oop344 channel for 344 related dialog<br />Additional channels of interest: #seneca to interact with all Seneca students participating in opensource projects, and #seneca-social for Social (off-topic) dialog.
 
# Join the IRC by [http://www.wikihow.com/Register-a-User-Name-on-Freenode registering your nickname on freenode] server and joining the #seneca-oop344 channel for 344 related dialog<br />Additional channels of interest: #seneca to interact with all Seneca students participating in opensource projects, and #seneca-social for Social (off-topic) dialog.
 
# Create a blog (if you don't already have one)  
 
# Create a blog (if you don't already have one)  
# Create an account on this wiki, (please use your seneca email id for your wiki id)
 
 
# Add your name to the [[Student List 20111 - OOP344 | OOP344 Student List]]
 
# Add your name to the [[Student List 20111 - OOP344 | OOP344 Student List]]
 
# Download [http://tortoisesvn.net/downloads SVN] and check out the OOP344 repo(svn://zenit.senecac.on.ca/oop344) to get the notes done in class (userid: "oop344", no password)
 
# Download [http://tortoisesvn.net/downloads SVN] and check out the OOP344 repo(svn://zenit.senecac.on.ca/oop344) to get the notes done in class (userid: "oop344", no password)
 +
# Create you team page using [[Team page template - oop344 20111|provided template]]
  
 
=== Resources ===
 
=== Resources ===
 
+
* [http://tortoisesvn.net/downloads.html TortoiseSVN download page for windows]
 
* A quick tutorial for SVN: [http://www.owlnet.rice.edu/~comp314/svn.html Source Control in Ten Minutes]
 
* A quick tutorial for SVN: [http://www.owlnet.rice.edu/~comp314/svn.html Source Control in Ten Minutes]
 
*[http://zenit.senecac.on.ca/wiki/index.php/OOP344_Student_Resources#Creating_Projects_in_Visual_Studio_for_Console_ApplicationsHowto create console application projects in Visual Studio]
 
*[http://zenit.senecac.on.ca/wiki/index.php/OOP344_Student_Resources#Creating_Projects_in_Visual_Studio_for_Console_ApplicationsHowto create console application projects in Visual Studio]
Line 34: Line 35:
 
* [http://zenit.senecac.on.ca/wiki/index.php/RabbitVCS RabbitVCS - Linux alternative to TortoiseSVN]
 
* [http://zenit.senecac.on.ca/wiki/index.php/RabbitVCS RabbitVCS - Linux alternative to TortoiseSVN]
 
* [http://en.wikipedia.org/wiki/Comparison_of_Internet_Relay_Chat_clients Compare IRC clients]
 
* [http://en.wikipedia.org/wiki/Comparison_of_Internet_Relay_Chat_clients Compare IRC clients]
 +
* [http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page How To edit Wiki pages]
 +
* [http://en.wikipedia.org/wiki/Wikipedia:Cheatsheet How To edit Wiki Cheatsheet]
 +
* [http://www.silverex.org/download/ Free Xchat for windows]
 +
* [http://colloquy.info/downloads.html Colloquy] an IRC Client for Mac
 +
* [http://www.rapidsvn.org/download/release/0.12/RapidSVN-0.12.0-8051.dmg RapidSVN] a SVN Client for Mac
 +
 +
== Week 2 - Jan 16 ==
 +
 +
=== This Week ===
 +
 +
* Finalizing team members
 +
* 144/244 review and more
 +
** Basic Data Types
 +
** Addresses and Pointers
 +
* Preprocessor Directives
 +
* Console IO
 +
** ncurses (Linux)
 +
** curses (Mac/AIX)
 +
** conio/windows.h (Windows)
 +
** conio.h (Borland?)
 +
* Prj 0.1 startup
 +
*: IO lib (BIO)
 +
 +
=== To Do ===
 +
 +
Due date: January 24nd , 23:59 (11:59pm)
 +
* Finalize your teams and indicate it on the team page.
 +
* Verify and Correct your team name in the [[Teams' List 20111 - OOP344|Teams' List]] page, following the format indicated.
 +
 +
=== Resources ===
 +
 +
* Practical Programming Techniques Using C++
 +
*: Preprocessor Directives page 3
 +
*: Basic Data Types Page 21
 +
*: Addresses and Pointers Page 28
 +
*: Direct Terminal IO page 12
 +
 +
== Week 3 - Jan 23 ==
 +
 +
=== This Week ===
 +
*C review
 +
*BIO (continued)
 +
*Using SVN Repository
 +
 +
=== To Do ===
 +
* 0.1 Release is due on Wed Feb 2nd , 23:59
 +
*: [[Development and submission steps using SVN - OOP344 20111]]
 +
* write this function and blog about it:
 +
*: void Int2Str(char* num, int number);
 +
*::[http://aali83.blogspot.com/2011/01/converting-integer-into-character.html Solution] by [[user:aali83]]
 +
*::[http://wliang983.wordpress.com/2011/01/27/38/ SOLUTION] by [[user:wliang11]]
 +
*::[http://ajbruno-oop344.blogspot.com/2011/01/converting-integer-to-string.html Alternate Solution] by [[user:ajbruno]]
 +
*::[http://bhrugeshblog.wordpress.com/2011/01/27/c-convert-number-to-string/ Different Approach] by [[User:bapatel6|Bhrugesh]]
 +
*::[http://coding.shaunofthelive.com/2011/01/int2str.html Int2Str] by [[User:sahill1]]
 +
* Another challenge for OOP344 Students, code the definition of this function in '''one''' line and blog about it:
 +
*: void bio_display(const char* str, int row, int col, unsigned int len);
 +
*::[http://luigibozianu.blogspot.com bio_display] by [[user:lbozianu]]
 +
 +
**: Start Date: Saturday, January 29th, 2011
 +
**: Due Date  : Friday, February 4th, 2011
 +
* "'''Watch'''" all the important pages.
 +
#Make sure you verified your email account already.
 +
#Click on "my preferences" on top of the screen.
 +
#Scroll to the bottom of the page and click "E-mail me when a page on my watchlist is changed".
 +
#Save your changes and go to the pages that you wish to watch and click on "watch" on the top of the screen.
 +
#Strongly suggest to watch: the '''current page''', [[Project 20111 - OOP344]], and [[OOP344 Student Resources]]
 +
 +
=== Resources ===
 +
* Practical Programming Techniques Using C++
 +
*: page 17, Direct IO stuff!!!
 +
*: [[CC Linux Platform Virtual Key Code 20111 - OOP344|CC Linux Platform Virtual Key Code]]
 +
*: [http://www.meandmark.com/keycodes.html  CC MAC Platform Virtual Key Code (external site)] Just get out Windows Calculator in programmer mode to do the Hex to Dec conversions.
 +
*: [http://www.classicteck.com/rbarticles/mackeyboard.php Virtual Key Code for Mac, Linux and Windows]
 +
 +
== Week 4 - Jan 30 ==
 +
 +
=== This Week ===
 +
*Pointers, Arithmetic
 +
*Arrays, (Multi-dimensional)
 +
*BIO complex functions (continued)
 +
*Generic pointers (void pointers)
 +
*
 +
 +
=== To Do ===
 +
* complete R0.1 if not done already
 +
* re-evaluate your team (see who is in and who is not)
 +
* complex bio function due on Thu Feb 17th 23:59
 +
 +
=== Resources ===
 +
* Practical programming techniques in C++
 +
*: Multi-Dim Arrays  26
 +
*: Addresses and pointer 28
 +
*: Pointer arithmetic 29
 +
 +
* Helper image for bio_edit
 +
<!--*: [[Image:Bio edit-parameters.jpg|thumb|320px|bio_edit]] -->
 +
 +
== Week 5 - Feb 6 ==
 +
 +
=== This Week ===
 +
*Pointers to functions
 +
*typedef
 +
*struct, enum, union
 +
*variable argument list
 +
*real syntax of main
 +
 +
=== To Do ===
 +
* complex bio function due on Thu Feb 17th 23:59
 +
 +
=== Resources ===
 +
*Practical Programming Techniques Using C++
 +
*: pointer to functions page 35
 +
*: Creating custom datatype names (typedef) page 41
 +
*: struct, union, enum page 37
 +
*: real syntax of main 58
 +
*: variable argument list 61
 +
== Week 6 - Feb 13 ==
 +
 +
=== This Week ===
 +
* Friday class will be on IRC, freenode.net server, #seneca-oop344 Channel from 9:30 to 11:30
 +
* declaration modifiers
 +
*: static, const, register....
 +
* control flow,
 +
* recursive algorithms
 +
* moving to cpp
 +
** default parameters
 +
** namespaces
 +
 +
=== To Do ===
 +
* complex bio function due on Thu Feb 17th 23:59
 +
 +
=== Resources ===
 +
* [http://www.ashkansotoudeh.com/blog/?p=135 File Copy Function] by [[user:asotoude]]
 +
 +
== Week 7 - Feb 20 ==
 +
 +
=== This Week ===
 +
* Dynamic memory allocation review
 +
* forward declaration
 +
* linked lists
 +
* R0.7 will be out
 +
 +
=== To Do ===
 +
* Reorganize your teams
 +
*: re-group if needed
 +
*: layoff those who are inactive
 +
* Add buffering to bio basic function from Fardad's code
 +
 +
=== Resources ===
 +
*
 +
== Week 8 - Feb 27 (Study break) ==
 +
 +
=== This Week ===
 +
* R0.4 due end of the week
 +
*: mock-up (hollow) classes and more
 +
 +
=== To Do ===
 +
* Reorganize your teams
 +
*: re-group if needed
 +
*: layoff those who are inactive
 +
 +
 +
=== Resources ===
 +
*
 +
== Week 9 - Mar 6 ==
 +
 +
=== This Week ===
 +
* Project review
 +
* Midterm test on Fri, March 11th
 +
 +
=== To Do ===
 +
*
 +
 +
=== Resources ===
 +
*
 +
== Week 10 - Mar 13 ==
 +
=== This week ===
 +
* Streams
 +
* binary operations
 +
=== To Do ===
 +
* R0.3 and R0.35 due
 +
* Team Regrouping Email
 +
* Write this function and blog about it
 +
<big><pre>
 +
void SetBitPattern(unsigned int& V, const char* pattern, int startBitIndex);
 +
SetBitPattern(I, "01101111", 4);
 +
// Startingf from bit 4 it will set the bits of I to the incoming pattern
 +
</pre></big>
 +
=== Resources ===
 +
* [http://acook6.blogspot.com/2011/03/setting-bit-pattern.html Setting a Bit Pattern] by [[User:acook6|Alan]]
 +
* [http://bhrugeshblog.wordpress.com/2011/03/19/replace-binary-number-string/ Binary pattern replacement] by [[User:bapatel6|Bhrugesh]]
 +
* [http://www.ashkansotoudeh.com/blog/?p=144 SetBitPattern()] by [[User:asotoude|Ashkan]]
 +
* Practical Programming Techniques using C++ - Bitwise operators page 46
 +
 +
== week 11 - Mar 20 ==
 +
=== This week ===
 +
* Binary file access
 +
* Templates
 +
=== To Do ===
 +
* [[Console UI Core Classes - OOP344 20111#Tue_march_29_R4.0|Tue march 29 R4.0 is due]]
 +
* Set up meeting with Fardad if you need help with any part of the R4.0 release
 +
*: meeting can be: On IRC, Skype, Office
 +
 +
=== Resources ===
 +
* Practical Programming Techniques using C++ - Binary file access page 77
 +
* Practical Programming Techniques using C++ - Templates pages 85, 86
 +
* Practical Programming Techniques using C++ - Inline Functions page 84
 +
== Week 12 - Mar 27 ==
 +
=== This week ===
 +
* Test 2 - APRIL FOOLS!
 +
* Multiple Inheritance
 +
* Exception Handling
 +
* Project review
 +
 +
=== To Do ===
 +
* Study for test 2
 +
* Complete R4.0
 +
 +
=== Resources ===
 +
* Practical Programming Tech. Using C++
 +
*: Multiple Inheritance Page 94
 +
*: Exception Handling page 99
 +
== Week 13 - Apr 3 ==
 +
===This week===
 +
* Casting and Runtime Type information
 +
* Standard Templates
 +
 +
=== To Do ===
 +
* Finalize IO classes and start working on the App
 +
 +
=== Resources ===
 +
== Week 14 - Apr 10 ==
 +
===This Week===
 +
* Final exam April 18
 +
 +
===To Do===
 +
===Resources===

Latest revision as of 11:10, 2 May 2011


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

OOP344 -- Weekly Schedule 2011/1 (Winter Semester)

Week 1 - Jan 9

This Week

  • Introduction to Open Source development.
  • Collaboration Tools:

To Do

Due date: January 15th , 23:59 (11:59pm)

Form a team of 3 to 5 students and select a name for your team. (members can be from both sections of oop344)

  1. Create an account on this wiki, (please use your seneca email id for your wiki id)
  2. Join the IRC by registering your nickname on freenode server and joining the #seneca-oop344 channel for 344 related dialog
    Additional channels of interest: #seneca to interact with all Seneca students participating in opensource projects, and #seneca-social for Social (off-topic) dialog.
  3. Create a blog (if you don't already have one)
  4. Add your name to the OOP344 Student List
  5. Download SVN and check out the OOP344 repo(svn://zenit.senecac.on.ca/oop344) to get the notes done in class (userid: "oop344", no password)
  6. Create you team page using provided template

Resources

Week 2 - Jan 16

This Week

  • Finalizing team members
  • 144/244 review and more
    • Basic Data Types
    • Addresses and Pointers
  • Preprocessor Directives
  • Console IO
    • ncurses (Linux)
    • curses (Mac/AIX)
    • conio/windows.h (Windows)
    • conio.h (Borland?)
  • Prj 0.1 startup
    IO lib (BIO)

To Do

Due date: January 24nd , 23:59 (11:59pm)

  • Finalize your teams and indicate it on the team page.
  • Verify and Correct your team name in the Teams' List page, following the format indicated.

Resources

  • Practical Programming Techniques Using C++
    Preprocessor Directives page 3
    Basic Data Types Page 21
    Addresses and Pointers Page 28
    Direct Terminal IO page 12

Week 3 - Jan 23

This Week

  • C review
  • BIO (continued)
  • Using SVN Repository

To Do

    • Start Date: Saturday, January 29th, 2011
      Due Date  : Friday, February 4th, 2011
  • "Watch" all the important pages.
  1. Make sure you verified your email account already.
  2. Click on "my preferences" on top of the screen.
  3. Scroll to the bottom of the page and click "E-mail me when a page on my watchlist is changed".
  4. Save your changes and go to the pages that you wish to watch and click on "watch" on the top of the screen.
  5. Strongly suggest to watch: the current page, Project 20111 - OOP344, and OOP344 Student Resources

Resources

Week 4 - Jan 30

This Week

  • Pointers, Arithmetic
  • Arrays, (Multi-dimensional)
  • BIO complex functions (continued)
  • Generic pointers (void pointers)

To Do

  • complete R0.1 if not done already
  • re-evaluate your team (see who is in and who is not)
  • complex bio function due on Thu Feb 17th 23:59

Resources

  • Practical programming techniques in C++
    Multi-Dim Arrays 26
    Addresses and pointer 28
    Pointer arithmetic 29
  • Helper image for bio_edit

Week 5 - Feb 6

This Week

  • Pointers to functions
  • typedef
  • struct, enum, union
  • variable argument list
  • real syntax of main

To Do

  • complex bio function due on Thu Feb 17th 23:59

Resources

  • Practical Programming Techniques Using C++
    pointer to functions page 35
    Creating custom datatype names (typedef) page 41
    struct, union, enum page 37
    real syntax of main 58
    variable argument list 61

Week 6 - Feb 13

This Week

  • Friday class will be on IRC, freenode.net server, #seneca-oop344 Channel from 9:30 to 11:30
  • declaration modifiers
    static, const, register....
  • control flow,
  • recursive algorithms
  • moving to cpp
    • default parameters
    • namespaces

To Do

  • complex bio function due on Thu Feb 17th 23:59

Resources

Week 7 - Feb 20

This Week

  • Dynamic memory allocation review
  • forward declaration
  • linked lists
  • R0.7 will be out

To Do

  • Reorganize your teams
    re-group if needed
    layoff those who are inactive
  • Add buffering to bio basic function from Fardad's code

Resources

Week 8 - Feb 27 (Study break)

This Week

  • R0.4 due end of the week
    mock-up (hollow) classes and more

To Do

  • Reorganize your teams
    re-group if needed
    layoff those who are inactive


Resources

Week 9 - Mar 6

This Week

  • Project review
  • Midterm test on Fri, March 11th

To Do

Resources

Week 10 - Mar 13

This week

  • Streams
  • binary operations

To Do

  • R0.3 and R0.35 due
  • Team Regrouping Email
  • Write this function and blog about it
void SetBitPattern(unsigned int& V, const char* pattern, int startBitIndex);
SetBitPattern(I, "01101111", 4);
// Startingf from bit 4 it will set the bits of I to the incoming pattern

Resources

week 11 - Mar 20

This week

  • Binary file access
  • Templates

To Do

  • Tue march 29 R4.0 is due
  • Set up meeting with Fardad if you need help with any part of the R4.0 release
    meeting can be: On IRC, Skype, Office

Resources

  • Practical Programming Techniques using C++ - Binary file access page 77
  • Practical Programming Techniques using C++ - Templates pages 85, 86
  • Practical Programming Techniques using C++ - Inline Functions page 84

Week 12 - Mar 27

This week

  • Test 2 - APRIL FOOLS!
  • Multiple Inheritance
  • Exception Handling
  • Project review

To Do

  • Study for test 2
  • Complete R4.0

Resources

  • Practical Programming Tech. Using C++
    Multiple Inheritance Page 94
    Exception Handling page 99

Week 13 - Apr 3

This week

  • Casting and Runtime Type information
  • Standard Templates

To Do

  • Finalize IO classes and start working on the App

Resources

Week 14 - Apr 10

This Week

  • Final exam April 18

To Do

Resources