21
edits
Changes
fixed the oop344 index
Please help make this page resourceful for all OOP344 students to use!
= OOP344 -- Object Oriented Programming II Using C++ = ==[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
== The Project (under construction) ==
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.===Individual work===The Basic Input Output Library, and Main Application
* C based multi-platform IO functions; (Majority of the code is provided by the prof).* The assignment can be found [[OOP344_Assignment_One|here]]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.
==Archives==
[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 =
* 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)
* 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<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]
* ChallengeDownload [http: write this function without using any library functions; void GetInt(char *strint, int val);<br /> this function gets an integer value /subversion.tigris.org/ SVN] and converts it to a string ("strint")* Challenge: Modify [[check out the OOP344 Assignment One#void io_displayrepo(const char *str, int row, int col, int len)|io_display]] function to the shortest code possible. Get the source [httpssvn://cszenit.senecac.on.ca/~fardad.soleimanloo/oop344/) to get the notes/07A-Sep17/ HERE].done in class
==Week 3 - Sep 20= 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]
===This Week=2 - Jan 17 ==
===Topics for this weekTo Do ===* #undef, casting, unsigned variables, multi-dimensional arrays and their pointer notation* pointers to functions, pointers to pointers to pointers to...* typedef, enum
===This WeekResources ===
* Explains pointers and how memory is stored.... [[OOP344_Quiz2_20093|Quiz 2]]* Bits, bitwise operators* a jump ahead and review!, http://augustcouncil.com/~tgibson/tutorial/ptr.html C/C++, Inheritance, polymorphism, encapsulation - Memory and Pointers]
===To DoThis Week ===* Complete last week's "To Do"s, if not done already!* 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* 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 you 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
===This Week=====To Do == Dynamic Memory allocation ====To do Dynamic Memory Allocation you need:# Pointer of the type of the memory we are alocating # 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.
* 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: <big> void bio_putint(int val) </big>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* Assignment one is due Thursday * continue :-(** goto -:(* joining expressions* conditional expression Oct 15th, 23(x = a>b?c:59d) === To Do === === Resources ===== Week 6 - Feb 14 ===== This Week === * Declaration Modifiers** const** auto** extern* Real Syntax of main* Complete past weeks' "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 === * A quick tutorial for SVNThursday 23: [http59://wwwBIOL 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.owlnetAll that you have learnt from ipc144 to this point on C language only.rice === To Do === === Resources === == Week 10 - Mar 14 ===== This Week === * Sunday 11:59 Project 0.edu/~comp314/svn5 due.html Source Control in Ten Minutes]* Get ready for * create a PRJ_0.5 branch of a quiz on Dynamic memory allocation tested and SVN next weekcompiled 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
==Week 7 - Oct18= To Do ===
===This WeekResources ===
==Week 12 - Mar 28 =To Do==== This Week ===
==Week 8 13 - Oct 25Apr 4 =====this weekThis Week ===* Study breakTest 2; everything from ipc144 to now about C and C++ language.* IRC classes Sunday 11:59, Prj_1.0 is due.
==Week 9 - Nov 1= To Do ===
==Week 10 - Nov 8= Resources ===
==Week 14 - Apr 11 - Nov 15===== This Week ===
==Week 12 - Nov 22= To Do ===
==Week 13 - Nov 29= Resources ===
==Exam Week 14 - Dec 6Apr 18 ==* Exam April 20th, 14:00 (2 PM) Room T4040