Difference between revisions of "OOP344 - 20101"

From CDOT Wiki
Jump to: navigation, search
(fixed the oop344 index)
 
(79 intermediate revisions by 10 users not shown)
Line 1: Line 1:
<big><big>Object Oriented Programming II Using C++</big></big>
+
<big><big>Object Oriented Programming II Using C++</big></big> with introduction to open source
 +
{{OOP344 Index - 20101}}
  
[[OOP344]] - [[OOP344 Student List]] - [[OOP344 Teams]] - [[OOP344 Assignment One]] - [[OOP344 Assignment Two]] - [[OOP344 IRC Schedules 20093 |OOP344 IRC Schedules]] <br />
+
Please help make this page resourceful for all OOP344 students to use!
- [[Student Resources]]<br />
 
  
Please help make this page resourceful for all OOP344 students to use!
+
= OOP344 -- Object Oriented Programming II Using C++ =
= OOP344 -- Object Oriented Programming II Using C++=
 
  
==[https://scs.senecac.on.ca/course/oop344 Subject Description and Course Outcomes]==
+
== [https://scs.senecac.on.ca/course/oop344 Subject Description and Course Outcomes] ==
  
 
* Please visit the [https://scs.senecac.on.ca School Of Computer Studies] website for the [https://scs.senecac.on.ca/course/oop344 detailed description] of the subject
 
* Please visit the [https://scs.senecac.on.ca School Of Computer Studies] website for the [https://scs.senecac.on.ca/course/oop344 detailed description] of the subject
  
== The Project ==
+
== The Project (under construction) ==
  
The project for this semester is a multiplatform text based, Text Editor.<br />
+
The project for this semester is a multiplatform text based, Text Editor and is done using opensource concepts<br />
  
The project is divided into 2 main parts.
+
The project is divided into 2 main parts. The Basic Input Output Library, and Main Application
===Individual work===
 
  
Done individually! Each student must complete and hand her/his own work, no collaboration permitted for this part.
+
=== Basic Input Output Library ===
  
The assignment can be found [[OOP344_Assignment_One|here]].
+
* C based multi-platform IO functions; (Majority of the code is provided by the prof).
 +
* The Project is initiated on individual SVN accounts for each team
 +
* Each team member is to commit a section of the code and resolve possible conflicts.
  
* [[OOP344 Assignment One#Console Input Output Library|Console Input Output Library (ciol)]]
+
=== Main Applicaton ===
** [[OOP344 Assignment One#Basic Console Input Output|Basic Console Input Output (io)]]: <br /> This part is written in C language. It is responsible for handling basic input output features needed to interact with the console
 
** [[OOP344 Assignment One#Line and Selection Editor|Line and Selection Editor:]]<br /> This part is written in C Language and only uses bcio routines, to interact with the console.
 
*** [[OOP344 Assignment One#Line Editor: int io_edit(........)|Line Editor]]<br /> This is responsible for making a full edit on a single line of text and also provide basis for a multi-line text editor.
 
*** [[OOP344 Assignment One#Selection Editor|Selection Editor]]<br /> It provides means (A Checkbox) to create selection lists or Yes/No queries.
 
  
===Open Source===
+
This part will be done collaboratively in groups of 4 - 8 students under a simulated open source model
  
This part will be done collaboratively in groups of 4 - 8 students under a simulated open source model
+
* Basic Encapsulating Classes <br /> This part is written in C++ and encapsulates the '''''io''''' routines into classes
* Basic Encapsulating Classes (bec)<br /> This part is written in C++ and encapsulates the '''''io''''' routines into classes
+
* The Application<br />this part is written in C++ and uses the "Basic Encapsulating Classes" classes to do interact with the user.
* The Text Editor<br />this part is written in C++ and uses the '''''bec''''' classes to do full text edit.
+
 
 +
== Grading ==
  
==Grading==
+
* Tests
 +
** Test 1    10%
 +
** Test 2    10%
 +
** Quizzes  10%
 +
* Project
 +
** IO Library 3%
 +
** Application  17%
 +
** Contribution 10%
 +
* Final Exam 40%
  
To be completed
+
== Resources ==
  
==Resources==
+
* Class notes can be found here: svn://zenit.senecac.on.ca/oop344
 +
* [http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page How To edit Wiki pages]
 +
* [http://subversion.tigris.org/ Subversion (SVN)]
 +
* [http://tortoisesvn.net/downloads Download Page of TortoiseSVN]
 +
* [http://svnbook.red-bean.com/ SVN book at red-bean.com] or download [https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/svn-book.pdf the PDF from here].
 +
* Mac Lab Available in 2108 as well as in the Computing Commons*
 +
* [http://zenit.senecac.on.ca/wiki/index.php/OOP344_Student_Resources#Create_an_IRC_account_and_login_.28in_Windows.29 Create an IRC account and login (in Windows)]
 +
* [http://irchelp.org/irchelp/irctutorial.html IRC Tutorial]
  
*[http://en.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page How To edit Wiki pages]
+
== Examples ==
*[http://subversion.tigris.org/ Subversion (SVN)]
 
*[http://svnbook.red-bean.com/ SVN book at red-bean.com] or download [https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/svn-book.pdf the PDF from here].
 
*Mac Lab Available in 2108 as well as in the Computing Commons*
 
  
==Examples==
+
svn://zenit.senecac.on.ca/oop344/trunk
[https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/ Examples and Notes done in class]
 
  
==Archives==
+
== Archives ==
  
[https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/OLD/ Class notes, samples, tests, ... since 2001]
+
[https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/OLD/ Class notes, samples, tests, ... 2001 -> 2009]<br />
 +
checkout svn://zenit.senecac.on.ca/oop344/tags for all the notes since 2001<br />
 +
[[OOP344 20093]]
  
 
= OOP344 -- Weekly Schedule =
 
= OOP344 -- Weekly Schedule =
==Week 2 - Sep 13==
 
===This Week===
 
  
C, a closer look to:
+
== Week 1 - Jan 10 ==
define, include, macros, operators, statement evaluation, return value of main, return value of printf and scanf, Conditional Compilation
+
 
 +
=== This Week ===
  
Starting assignment one
+
* Introduction to Open Source development.
 +
* Collaboration Tools:
 +
** Wiki
 +
** Blog
 +
** IRC
 +
** Code Repository
 +
* 144/244 review
  
===To Do===  
+
=== To Do ===
 +
 
 +
Due date: Jan 12, 2010 , 23:59 (11:59pm)
  
Due date: Sep -17 - 2009 , 23:59 (11:59pm)
 
 
* Add your name to the [[OOP344 Student List]]
 
* Add your name to the [[OOP344 Student List]]
* Join the IRC by [http://www.wikihow.com/Register-a-User-Name-on-Freenode registering your nickname on freenode] server and joining the #Seneca channel
+
* Join the IRC by [http://www.wikihow.com/Register-a-User-Name-on-Freenode registering your nickname on freenode] server and joining the #Seneca channel<br />Additional channels of interest:
 +
** #seneca-oop344 for 344 related dialog
 +
** #seneca-social for Social (off-topic) dialog
 
* Create a blog (if you don't already have one) and [[Planet CDOT Feed List|add your feed]] to [http://zenit.senecac.on.ca/~chris.tyler/planet/ Planet CDOT]
 
* Create a blog (if you don't already have one) and [[Planet CDOT Feed List|add your feed]] to [http://zenit.senecac.on.ca/~chris.tyler/planet/ Planet CDOT]
* Challenge: write this function without using any library functions; void GetInt(char *strint, int val);<br /> this function gets an integer value and converts it to a string ("strint")
+
* Download [http://subversion.tigris.org/ SVN] and check out the OOP344 repo(svn://zenit.senecac.on.ca/oop344) to get the notes done in class
* Challenge: Modify [[OOP344 Assignment One#void io_display(const char *str, int row, int col, int len)|io_display]] function to the shortest code possible. Get the source [https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/07A-Sep17/ HERE].
+
 
 +
=== Resources ===
 +
 
 +
* 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_Applications How to create console application projects in Visual Studio]
 +
* [http://zenit.senecac.on.ca/wiki/index.php/OOP344_Student_Resources#Create_an_IRC_account_and_login_.28in_Windows.29 Create an IRC account and login (in Windows)]
 +
* [http://zenit.senecac.on.ca/wiki/index.php/RabbitVCS RabbitVCS - Linux alternative to TortoiseSVN]
 +
 
 +
== Week 2 - Jan 17 ==
 +
 
 +
=== This Week ===
 +
 
 +
* Assessment Quiz on ipc144 and oop244
 +
* C, a closer look to:
 +
 
 +
define, include, macros, operators, statement evaluation, return value of main, return value of printf and scanf, Conditional Compilation
 +
 
 +
* Starting the IO Library
 +
 
 +
=== To Do ===
 +
 
 +
* Make sure all your information on last week's '''To Do''' is up to date
 +
* Finalize your teams
 +
* Book your first [[OOP344 IRC Schedules | IRC meeting]] with Fardad on #seneca-oop344 (Remember, for the first meeting all team members should be present)
 +
* Add Coding Rules to your team page and follow it in your project
 +
** Coding rules are things like, tab size, indentation size, etc...
 +
 
 +
=== Resources ===
 +
 
 +
* Explains pointers and how memory is stored.... [http://augustcouncil.com/~tgibson/tutorial/ptr.html C/C++ - Memory and Pointers]
  
==Week 3 - Sep 20==
+
== Week 3 - Jan 24 ==
  
 +
=== This Week ===
  
===This Week===
+
* #define and conditional compilation
 +
* Starting the Basic Input Output Functions
 +
* Assigning SVN Accounts to teams
  
Starting Assignment one, starting the project
+
=== To Do ===
  
Pointers, pointer arithmetic, pointer to pointer to....,
+
* Checkout the repository from trunk and test compile it on different platforms
 +
* Branch the trunk into a branch under your SenecaID in branches
 +
** Checkout your own branch and start working on your part of the assignment
 +
** After each accomplishment in your own branch, modify the code in trunk and commit the code
 +
** Make sure the code committed to trunk is ALWAYS at compiled state with no warnings or errors.
  
===To Do===
+
=== Challenge ===
* Complete last week's "To Do"s.
 
* Form the teams and [[OOP344 Teams|add your team to the wiki]]
 
** Teams with less than 4 members and more than 8 are not acceptable.
 
** Merge or divide teams if necessary to adjust the number of team members.
 
** Teams' member selection must be finalized by Oct 3rd.
 
** Those without a team, join the teams with least number of members.
 
** Select a team leader who is going to be the contact person for the team.
 
*Challenge 3: using what we learned so far (logical operators, and pointers) write the io_display function in ONE line only(Due Sunday 23:59):
 
<pre>void io_display(const char *str, int row, int col, int len){
 
  yada yada yada;
 
}</pre>
 
  
==Week 4 - Sep 27==
+
Without use of any library functions (use only the BIOF functions) create a function called:
  
===Topics for this week===
+
<big>
* #undef, casting, unsigned variables, multi-dimensional arrays and their pointer notation
+
void bio_putint(int val)
* pointers to functions, pointers to pointers to pointers to...
 
* typedef, enum
 
  
===To Do===
+
</big>
* Complete last week's "To Do"s.
+
This function should print the integer at where the cursor is on the screen.
* Finalize Teams by end of the week (Sat Oct 3rd)
+
The first two blogs with the correct answer will get 5% bonus for the first test.
** If your team has less than 4 members, either try to merge your team to another team or break up your team and join other teams.
+
The next two blogs optimizing the code of the first two blogs will get 5% bonus for the first test too.
** After finalizing your members make sure your team wiki page is created and includes the list of all team members and their information
 
** Select and identify a first and second contact person for your group.
 
  
==Week 5 - Oct 04==
+
=== Resources ===
  
===This Week===
+
== Week 4 - Jan 31 ==
 +
=== This Week ===
  
* [[OOP344_Quiz2_20093|Quiz 2]]
+
* SVN review
* Bits, bitwise operators
+
* Multi dimension arrays
* a jump ahead and review!, C++, Inheritance, polymorphism, encapsulation 
+
* void pointers
 +
* pointer to function
  
* default parameters, forward declaration, initialization vs. setting, virtual methods, pure virtual methods, abstract base classes
+
=== To Do ===
  
===To Do===
+
* Blog
* Complete last week's "To Do"s, if not done already!
+
* Update your wiki student list page
* Copy [https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/AS1/as1tester.c as1tester.c] and run the test with your ciol.c and ciol.h
+
* Divide the assignment into small tasks and assign it to team members
* A quick tutorial for SVN: [http://www.owlnet.rice.edu/~comp314/svn.html Source Control in Ten Minutes]
 
* Read first four chapters of [https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/svn-book.pdf the SVN book].
 
* Download SVN and install it on your PC from [http://subversion.tigris.org/getting.html subversion.tigris.org]
 
** windows: [http://tortoisesvn.tigris.org/ Tortoise SVN]
 
** Linux (Fedora: <big><code>yum install subversion</code></big>)
 
** MAC: already in Apple's Developer Tools
 
  
==Week 6 - Oct 11==
+
=== Resources ===
  
===This Week===
+
== Week 5 - Feb 7 ==
==== Dynamic Memory allocation ====
+
=== This Week ===
To do Dynamic Memory Allocation you need:
 
# Pointer of the type of the memory we are allocating. Ex: int* p;
 
# If the pointer is already pointing at another already allocated memory, deallocate it.
 
# Allocate memory and set the pointer to its address.
 
# Use the memory.....
 
# When you are done, deallocate it. Ex: delete [ ] p;
 
  
===To Do===
+
* pointer to function
* Assignment one is due Thursday  Oct 15th, 23:59
+
* sizeof
* Complete past weeks' "To Do"s
+
** sizeof structures
* A quick tutorial for SVN: [http://www.owlnet.rice.edu/~comp314/svn.html Source Control in Ten Minutes]
+
* typedef
* Get ready for a quiz on Dynamic memory allocation and SVN next week.
+
* union
 +
* control flow
 +
** break, only in switch
 +
** continue :-(
 +
** goto -:(
 +
* joining expressions
 +
* conditional expression  (x = a>b?c:d)
  
==Week 7 - Oct18==
+
=== To Do ===
  
===This Week===
+
=== Resources ===
 +
== Week 6 - Feb 14 ==
 +
=== This Week ===
  
* passing arguments
 
* Quiz on DMA and SVN
 
* Assigning SVN Accounts
 
* IRC Meetings with Teams.
 
====Topics====
 
* [http://en.wikipedia.org/wiki/Linked_list Linked Lists]
 
 
* Declaration Modifiers
 
* Declaration Modifiers
** [http://en.wikipedia.org/wiki/Constant_(programming) const]
+
** const
** [http://en.wikipedia.org/wiki/Extern extern]
+
** auto
** [http://en.wikipedia.org/wiki/Static_variable#Static_Variables_as_Class_Variables static]
+
** extern
** [http://en.wikipedia.org/wiki/Automatic_variable auto]
+
* Real Syntax of main
** [http://en.wikipedia.org/wiki/Register_allocation register]
+
* Variable Argument list
** [http://en.wikipedia.org/wiki/Volatile_variable volatile]
+
 
* Passing arguments as command line arguments
+
=== To Do ===
* Variable argument list
+
 
 +
==== Challenge ====
 +
 
 +
Write the printf function but call it MyPrint.
 +
It should support
 +
 
 +
* %c  (character)
 +
* %s  (string)
 +
* %d  (integer)
 +
* %X or %x (integer printed in Hex)
 +
* %f  (double or float no formating, always printed with 2 digit after decimal point)
  
===To Do===
+
MyPrint("int %d, char %c, string %s, hex %x, float %f", 2, 'A', "hello", 16, 12.34567);
 +
int 2, char A, string hello, hex 10, 12.34
  
* Upload your sources to SVN
+
=== Resources ===
* Do Test Checkouts, builds and commits.
 
** For 5%, copy constructor for the DsStack class in the notes.
 
** For your own good, make the DsStack  class in the notes efficient....
 
** svn://zenit.senecac.on.ca/oop344_093svn/notes/27A-Oct22
 
  
==Week 8 - Oct 25==
+
== Week 7 - Feb 21 ==
===This Week===
+
=== This Week ===
* Study break
 
* IRC classes
 
  
==Week 9 - Nov 1==
+
* Thursday 23:59: BIOL due.
===This Week===
+
** Create a branch in tags called BIOL_1.0 and have the final BIOL compiled and tested with released tested program and then commit it to the BIOL_1.0 branch.
 +
** Note that there could be many other tags of BIOL to record your development milestones, but I only mark the highest release not less than 1.0.
  
====Test One====
+
=== To Do ===
  
Test one on Monday and Tuesday (Nov 2 and Nov 3)
+
=== Resources ===
====Topics====
 
* Linked Lists (continued)
 
** [http://en.wikipedia.org/wiki/Doubly-linked_list doubly-linked]
 
** trees (introduced)
 
  
==Week 10 - Nov 8==
+
== Week 8- Feb 28  Study Week ==
===This Week===
+
=== This Week ===
====Topics====
 
* File Streams
 
** what are cin and cout
 
** fstream, ifstream, ofstream
 
* Binary File Access
 
** read, write, append, truncate (ios::in, ios::out, ios::app, ios::ate, ios::trunc, ios::binary)
 
  
==Week 11 - Nov 15==
+
=== To Do ===
===This Week===
 
====Topics====
 
* Binary File Access (continued)
 
** seeking and getting the current location in a file
 
** index files, hashes, searches
 
* inline functions
 
  
==Week 12 - Nov 22==
+
=== Resources ===
===This Week===
+
 
====Topics====
+
== Week 9 - Mar 7 ==
* Templates
+
=== This Week ===
** function templates
+
* Monday Test One. All that you have learnt from ipc144 to this point on C language only.
** class templates
+
 
* Statics
+
=== To Do ===
** Declaration Modifiers
+
 
** methods
+
=== Resources ===
** extern
+
 
 +
== Week 10 - Mar 14 ==
 +
=== This Week ===
 +
 
 +
* Sunday 11:59 Project 0.5 due.
 +
** create a PRJ_0.5 branch of a tested and compiled trunk
 +
** PRJ_0.5 should a be working project with almost 50% of the functionalities finalized
 +
** Note that you may have many other branches in the tag to record your milestones, but the one I mark will be the highest tag NOT less than PRJ_0.5
 +
 
 +
=== To Do ===
 +
 
 +
=== Resources ===
 +
 
 +
== Week 11 - Mar 21 ==
 +
=== This Week ===
 +
 
 +
=== To Do ===
 +
 
 +
=== Resources ===
 +
 
 +
== Week 12 - Mar 28 ==
 +
=== This Week ===
 +
 
 +
=== To Do ===
  
==Week 13 - Nov 29==
+
=== Resources ===
===This Week===
 
  
====Test Two====
+
== Week 13 - Apr 4 ==
 +
=== This Week ===
 +
* Test 2; everything from ipc144 to now about C and C++ language.
 +
* Sunday 11:59, Prj_1.0 is due.
  
Test Two, Monday and Tuesday (Nov 30 and Dec 1)
+
=== To Do ===
====Topics====
 
* multiple inheritance
 
* Base classes
 
** virtual base classes
 
** abstract base classes (revisited)
 
* exception handling
 
  
==Week 14 - Dec 6==
+
=== Resources ===
===This Week===
 
  
====Exam====
+
== Week 14 - Apr 11 ==
 +
=== This Week ===
  
Exam on Thursday Dec, 10th, room T4040 14:00
+
=== To Do ===
====Topics====
 
  
* casting and run time information
+
=== Resources ===
* standard template library (introduced)
 
  
* review
+
== Exam Week - Apr 18 ==
 +
* Exam April 20th, 14:00 (2 PM) Room T4040

Latest revision as of 11:03, 12 May 2010

Object Oriented Programming II Using C++ with introduction to open source
OOP344 - 20101 - Student List - Teams - Project - IRC Schedules - Student Resources

Please help make this page resourceful for all OOP344 students to use!

OOP344 -- Object Oriented Programming II Using C++

Subject Description and Course Outcomes

The Project (under construction)

The project for this semester is a multiplatform text based, Text Editor and is done using opensource concepts

The project is divided into 2 main parts. The Basic Input Output Library, and Main Application

Basic Input Output Library

  • C based multi-platform IO functions; (Majority of the code is provided by the prof).
  • The Project is initiated on individual SVN accounts for each team
  • Each team member is to commit a section of the code and resolve possible conflicts.

Main Applicaton

This part will be done collaboratively in groups of 4 - 8 students under a simulated open source model

  • Basic Encapsulating Classes
    This part is written in C++ and encapsulates the io routines into classes
  • The Application
    this part is written in C++ and uses the "Basic Encapsulating Classes" classes to do interact with the user.

Grading

  • Tests
    • Test 1 10%
    • Test 2 10%
    • Quizzes 10%
  • Project
    • IO Library 3%
    • Application 17%
    • Contribution 10%
  • Final Exam 40%

Resources

Examples

svn://zenit.senecac.on.ca/oop344/trunk

Archives

Class notes, samples, tests, ... 2001 -> 2009
checkout svn://zenit.senecac.on.ca/oop344/tags for all the notes since 2001
OOP344 20093

OOP344 -- Weekly Schedule

Week 1 - Jan 10

This Week

  • Introduction to Open Source development.
  • Collaboration Tools:
    • Wiki
    • Blog
    • IRC
    • Code Repository
  • 144/244 review

To Do

Due date: Jan 12, 2010 , 23:59 (11:59pm)

Resources

Week 2 - Jan 17

This Week

  • Assessment Quiz on ipc144 and oop244
  • C, a closer look to:

define, include, macros, operators, statement evaluation, return value of main, return value of printf and scanf, Conditional Compilation

  • Starting the IO Library

To Do

  • Make sure all your information on last week's To Do is up to date
  • Finalize your teams
  • Book your first IRC meeting with Fardad on #seneca-oop344 (Remember, for the first meeting all team members should be present)
  • Add Coding Rules to your team page and follow it in your project
    • Coding rules are things like, tab size, indentation size, etc...

Resources

Week 3 - Jan 24

This Week

  • #define and conditional compilation
  • Starting the Basic Input Output Functions
  • Assigning SVN Accounts to teams

To Do

  • Checkout the repository from trunk and test compile it on different platforms
  • Branch the trunk into a branch under your SenecaID in branches
    • Checkout your own branch and start working on your part of the assignment
    • After each accomplishment in your own branch, modify the code in trunk and commit the code
    • Make sure the code committed to trunk is ALWAYS at compiled state with no warnings or errors.

Challenge

Without use of any library functions (use only the BIOF functions) create a function called:

void bio_putint(int val)

This function should print the integer at where the cursor is on the screen. The first two blogs with the correct answer will get 5% bonus for the first test. The next two blogs optimizing the code of the first two blogs will get 5% bonus for the first test too.

Resources

Week 4 - Jan 31

This Week

  • SVN review
  • Multi dimension arrays
  • void pointers
  • pointer to function

To Do

  • Blog
  • Update your wiki student list page
  • Divide the assignment into small tasks and assign it to team members

Resources

Week 5 - Feb 7

This Week

  • pointer to function
  • sizeof
    • sizeof structures
  • typedef
  • union
  • control flow
    • break, only in switch
    • continue :-(
    • goto -:(
  • joining expressions
  • conditional expression (x = a>b?c:d)

To Do

Resources

Week 6 - Feb 14

This Week

  • Declaration Modifiers
    • const
    • auto
    • extern
  • Real Syntax of main
  • Variable Argument list

To Do

Challenge

Write the printf function but call it MyPrint. It should support

  •  %c (character)
  •  %s (string)
  •  %d (integer)
  •  %X or %x (integer printed in Hex)
  •  %f (double or float no formating, always printed with 2 digit after decimal point)
MyPrint("int %d, char %c, string %s, hex %x, float %f", 2, 'A', "hello", 16, 12.34567);
int 2, char A, string hello, hex 10, 12.34

Resources

Week 7 - Feb 21

This Week

  • Thursday 23:59: BIOL due.
    • Create a branch in tags called BIOL_1.0 and have the final BIOL compiled and tested with released tested program and then commit it to the BIOL_1.0 branch.
    • Note that there could be many other tags of BIOL to record your development milestones, but I only mark the highest release not less than 1.0.

To Do

Resources

Week 8- Feb 28 Study Week

This Week

To Do

Resources

Week 9 - Mar 7

This Week

  • Monday Test One. All that you have learnt from ipc144 to this point on C language only.

To Do

Resources

Week 10 - Mar 14

This Week

  • Sunday 11:59 Project 0.5 due.
    • create a PRJ_0.5 branch of a tested and compiled trunk
    • PRJ_0.5 should a be working project with almost 50% of the functionalities finalized
    • Note that you may have many other branches in the tag to record your milestones, but the one I mark will be the highest tag NOT less than PRJ_0.5

To Do

Resources

Week 11 - Mar 21

This Week

To Do

Resources

Week 12 - Mar 28

This Week

To Do

Resources

Week 13 - Apr 4

This Week

  • Test 2; everything from ipc144 to now about C and C++ language.
  • Sunday 11:59, Prj_1.0 is due.

To Do

Resources

Week 14 - Apr 11

This Week

To Do

Resources

Exam Week - Apr 18

  • Exam April 20th, 14:00 (2 PM) Room T4040