Difference between revisions of "Weekly Schedule 20123 - OOP344"
(→To Do 10) |
|||
(118 intermediate revisions by 21 users not shown) | |||
Line 2: | Line 2: | ||
= OOP344 -- Weekly Schedule 2012/3 (Fall Semester)= | = OOP344 -- Weekly Schedule 2012/3 (Fall Semester)= | ||
− | + | * Inclass notes archive: [https://github.com/Seneca-OOP344/fardad-archive.git git@github.com:Seneca-OOP344/fardad-archive.git] | |
− | + | * Inclass notes: [https://github.com/Seneca-OOP344/OOP344-20123.git git@github.com:Seneca-OOP344/OOP344-20123.git] | |
− | |||
− | |||
== Week 1 - Sep 3 == | == Week 1 - Sep 3 == | ||
− | === This Week === | + | === This Week 1 === |
* Introduction to Open Source development. | * Introduction to Open Source development. | ||
Line 21: | Line 19: | ||
* Object Orientation Review | * Object Orientation Review | ||
− | === To Do === | + | === To Do 1 === |
# Read [http://git-scm.com/book Pro-git book] | # Read [http://git-scm.com/book Pro-git book] | ||
#: Chapter One and if possible Chapter Two | #: Chapter One and if possible Chapter Two | ||
Line 36: | Line 34: | ||
#: surname: | #: surname: | ||
#: seneca username: | #: seneca username: | ||
− | #: | + | #: github id: |
#: team name: | #: team name: | ||
#: number of team members: | #: number of team members: | ||
Line 44: | Line 42: | ||
# Having all the information above add your name to the [[Student List 20123 - OOP344|student list]] | # Having all the information above add your name to the [[Student List 20123 - OOP344|student list]] | ||
− | === Resources === | + | === Resources 1 === |
* [http://git-scm.com/book Pro-git book] | * [http://git-scm.com/book Pro-git book] | ||
− | * [http://www.sourcetreeapp.com GUI Client for | + | * [http://www.sourcetreeapp.com Git GUI Client for Mac ] |
− | + | * [http://windows.github.com/ Github Client for Windows] | |
+ | * [https://help.github.com/articles/generating-ssh-keys Generating SSH keys for github] | ||
* [http://www.wikihow.com/Register-a-User-Name-on-Freenode How to register your IRC nickname on freenode] | * [http://www.wikihow.com/Register-a-User-Name-on-Freenode How to register your IRC nickname on freenode] | ||
* [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] | ||
Line 60: | Line 59: | ||
** [http://colloquy.info/downloads.html Colloquy Colloguy (Mac)] | ** [http://colloquy.info/downloads.html Colloquy Colloguy (Mac)] | ||
** [https://addons.mozilla.org/en-US/firefox/addon/chatzilla/ ChatZilla (Multi-platform)] | ** [https://addons.mozilla.org/en-US/firefox/addon/chatzilla/ ChatZilla (Multi-platform)] | ||
+ | ** [http://clicksandwhistles.com/download.php Clicks & Whistles (Windows)] | ||
* How to Install | * How to Install | ||
** [http://wiki.tryphon.eu/how_to_install_xchat XChat] | ** [http://wiki.tryphon.eu/how_to_install_xchat XChat] | ||
+ | * Great 15 minutes tutorial that will give you basic understanding of Git | ||
+ | ** [http://try.github.com/levels/1/challenges/1 Try GitHub] | ||
+ | |||
== Week 2 - Sep 9 == | == Week 2 - Sep 9 == | ||
− | === This Week === | + | === This Week 2 === |
− | === To Do === | + | * Object Orientation Review |
− | === Resources === | + | *: Encapsulation, Inheritance, Polymorphism |
+ | * Languages | ||
+ | *: Platforms (Operating System + compiler) | ||
+ | *: Multi-file compilation process basics | ||
+ | *::compiler, linker | ||
+ | |||
+ | === To Do 2 === | ||
+ | # Complete the to do list of last week | ||
+ | # Send an email to [mailto:fardad.soleimanloo@senecacollege.ca?subject=344info me] and send your github and team information | ||
+ | #: subject of the email should be '''''344info''''' | ||
+ | #: '''''email content''''' | ||
+ | #: nickname: | ||
+ | #: name: | ||
+ | #: surname: | ||
+ | #: seneca username: | ||
+ | #: github id: | ||
+ | #: team name: | ||
+ | #: number of team members: | ||
+ | |||
+ | === Resources 2 === | ||
* Sep 10th Col-notes: [http://tinyurl.com/oop3441 note1] | * Sep 10th Col-notes: [http://tinyurl.com/oop3441 note1] | ||
+ | * If anybody didn't notice GitBook has translations. Here is Russian -> [http://git-scm.com/book/ru Русский GitBook] | ||
+ | == Week 3 - Sep 16 == | ||
+ | === This Week 3 === | ||
+ | * Pre-Processor Directives (Compiler continued) | ||
+ | * Macros | ||
+ | *: #define, #undef | ||
+ | *: multi-line macros | ||
+ | * Conditional Compilation | ||
+ | *: #ifdef, #ifndef, #if, #elif, #else, #endif, #undef | ||
+ | * Header file safeguards | ||
+ | *: non-standard: #pragma once, | ||
+ | * Operators | ||
+ | * Data types | ||
+ | *: Integer, floating point, pointer | ||
+ | *: signed, unsigned | ||
+ | * pointers | ||
+ | * Storage Class Specifiers | ||
+ | *: auto, register, volatile, const | ||
+ | |||
+ | === To Do 3 === | ||
+ | * Complete [[Teams' List 20123 - OOP344]] page, (adding your team name and their members information) | ||
+ | *: ''if you are not member of a team, add your name under "[[Teams'_List 20123 - OOP344#Not in a team|Not in a team]]" and I will assign you to a team.'' | ||
+ | * Study chapter two of [http://git-scm.com/book Pro-Git Book] | ||
+ | * Make sure your github account contains your '''''REAL FULL NAME''''' | ||
+ | |||
+ | === Resources 3 === | ||
+ | * [https://scs.senecac.on.ca/~oop344/pages/content/macro.html Macros] | ||
+ | * [https://scs.senecac.on.ca/~oop344/pages/content/condi.html Conditional Inclusion] | ||
+ | * [https://scs.senecac.on.ca/~oop344/pages/content/scala.html Primitive Types] | ||
+ | |||
+ | == Week 4 - Sep 23 == | ||
+ | === This Week 4 === | ||
+ | * Data types (continued) * | ||
+ | *: sizeof * | ||
+ | *: void, enum | ||
+ | * pointers (continued)* | ||
+ | *: pointer arithmetic * | ||
+ | *: function pointers | ||
+ | * Storage Class Specifiers | ||
+ | *: const | ||
+ | * Statics * | ||
+ | * extern * | ||
+ | * typedef | ||
+ | * Compound Types | ||
+ | *: Arrays * , Structures , Unions | ||
+ | * Inheritance | ||
+ | |||
+ | === To Do 4 === | ||
+ | === Resources 4 === | ||
+ | *[https://scs.senecac.on.ca/~oop344/pages/content/aggre.html Compound Types] | ||
+ | *[http://etherpad.proximity.on.ca:9001/p/oop3444-sep24a Etherpad Notes(SEP 24)] | ||
+ | *[http://etherpad.proximity.on.ca:9001/p/oop3444-sep28a Etherpad Notes(SEP 28)] | ||
+ | |||
+ | == Week 5 - Sep 30 == | ||
+ | === This Week 5 === | ||
+ | * Operator overload review (B) | ||
+ | * friends review (B) | ||
+ | * recursion (B) | ||
+ | * Virtual, Pure-Virtual, Abstract Classes (B) | ||
+ | * References | ||
+ | * command line arguments | ||
+ | * variable argument list | ||
+ | * The project (introduction, main design and idea) (B) | ||
+ | |||
+ | === To Do 5 === | ||
+ | === Resources 5 === | ||
+ | *[https://cs.senecac.on.ca/~btp300/pages/content/minhe.html#vir Virtual Inheritance] | ||
+ | *[http://etherpad.proximity.on.ca:9001/p/oop3445_oct1a Ethernotes OCT 1] | ||
+ | *[http://etherpad.proximity.on.ca:9001/p/oop3445_oct8a Ethernotes OCT 8] | ||
+ | |||
+ | == Week 6 - Oct 7 == | ||
+ | === This Week 6 === | ||
+ | * [[Project 20123 - OOP344|The project ]] | ||
+ | |||
+ | === To Do 6 === | ||
+ | * I (Fardad) sent an email with following subject '''''oop344 - Testing Group email to all oop344 students''''' | ||
+ | *: Make sure you received this email, if you did not, please check your spam filter and make sure it is not filtered. | ||
+ | *: If you have not received this email, please let me know as soon as possible so I update my mailing list. | ||
+ | === Resources 6 === | ||
+ | [[Project 20123 - OOP344|The project]] | ||
+ | |||
+ | == Week 7 - Oct 14 == | ||
+ | === This Week 7 === | ||
+ | * [[Project 20123 - OOP344|The Project (Continued)]] | ||
+ | * Lists | ||
+ | *: Arrays | ||
+ | *: Linked Lists | ||
+ | |||
+ | === To Do 7 === | ||
+ | * Double check and correct/update your information on Teams page | ||
+ | *: due date '''''NOW''''' | ||
+ | * Have your team page ready by using [[Team page template - oop344 20123|the team page template]] | ||
+ | *: If you already created your team page, modify it so its format matches [[Team page template - oop344 20123|the team page template]]. | ||
+ | *: If you have not yet created your team page, create it by '''''COPYING''''' the content of [[Team page template - oop344 20123|the team page template]] into a newly created page according to the regulations stated on [[Teams' List 20123 - OOP344 | Teams]] page. | ||
+ | *: Due date: '''''NOW''''' | ||
+ | * pull the notes from github and run and walkthrough '''Test1Frame.cpp''' with CFrame class to understand how it works and post your questions and answer in blogs. | ||
+ | * When posted, pickup, assign and start working on issues.... | ||
+ | |||
+ | === Resources 7 === | ||
+ | * [[GIT for OOP344 Projects]] | ||
+ | * [https://cs.senecac.on.ca/~btp300/pages/content/aggre.html Arrays] | ||
+ | * [https://cs.senecac.on.ca/~btp300/pages/content/linkl.html Lists] | ||
+ | * [http://etherpad.proximity.on.ca:9001/p/oop3447_oct15a ETHERNOTES OCT 10] | ||
+ | |||
+ | == Week 8 - Oct 21 (Study Week)== | ||
+ | === This Week 8 (STUDY BREAK) === | ||
+ | * [http://fsoss.senecac.on.ca/2012/ FSOSS] | ||
+ | |||
+ | === To Do 8 === | ||
+ | |||
+ | === Resources 8 === | ||
+ | |||
+ | == Week 9 - Oct 28 == | ||
+ | === This Week 9 === | ||
+ | * Monday, Midterm TEST | ||
+ | * Working with Git and github | ||
+ | * Linked lists (Queue) | ||
+ | |||
+ | === To Do 9 === | ||
+ | === Resources 9 === | ||
+ | * [http://etherpad.proximity.on.ca:9001/p/oop3449_nov2a Etherpad Notes Nov 2/12] | ||
+ | * Lecture video for Git: http://www.youtube.com/watch?v=JXusZR41Je0 | ||
+ | === Challenge! === | ||
+ | Add the following methods to queue: | ||
+ | * unsigned int size( ); | ||
+ | * int operator[](unsigned int index); | ||
+ | : Note* Did you mean int&? | ||
+ | ==== Challenge Answers ==== | ||
+ | * Yun Yang's version of these two methods is at http://yun811.blogspot.ca/. | ||
+ | * Amir Mobasseri's version can be find [http://ammobasseri.wordpress.com/2012/11/01/c-queue/ http://ammobasseri.wordpress.com/2012/11/01/c-queue/ here!] | ||
+ | * Revised version of Amir's code [http://mmwang2.blogspot.ca/2012/11/updated-version-of-amir-and-saeids-code.html Michael's blog] | ||
+ | : - Also I've noticed that Fardad did not write the return variable as a reference, which made it impossible to edit, as done in line 13 of queuetester.cpp, that is updated that as well. | ||
+ | * Michael Wang's version of the functions [http://mmwang2.blogspot.ca/2012/11/oop344-queue-class-functions.html Michael's blog] | ||
+ | * Prasanth's Version - [http://wereallforked.tumblr.com/post/34878497104/queue-challenge Blog Entry] | ||
+ | * Peter's Version - [http://peter.ug http://peter.ug/queue-cpp-operator-overload/] | ||
+ | * Stanislav's Version - [http://stanislavatseneca.blogspot.ca/ here] http://stanislavatseneca.blogspot.ca/ | ||
+ | : - I decided to go a bit further and I did my operator[] method able to add new Nodes to the end of the Queue if we have index > size, comments are greatly appreciated. | ||
+ | * Minh Khoa (Ken) Nguyen's Version - [http://kennguyen4z.wordpress.com/2012/11/02/oop344-challenge/ Ken's blog] | ||
+ | : - I actually go with side. I added a variable into the node. | ||
+ | * Carlos Conejo's version (I went a little further: it adds a node with data 0 if you try to reference past the current size so it does not crash): [http://carlosjavi3r.blog.ca/ Carlos's Blog]. | ||
+ | * Linpei Fan's Version - [http://Linpei.blogspot.ca/ here] Linpei's blog. | ||
+ | |||
+ | == Week 10 - Nov 4 == | ||
+ | === This Week 10=== | ||
+ | * Project Milestone 0.2 | ||
+ | * bitwise operators | ||
+ | *# and, or, not, exclusive or | ||
+ | *# shifts | ||
+ | *# determining the value of bits | ||
+ | *#: masks | ||
+ | *# setting the value of bits | ||
+ | *#: '''"mask AND value"''' to set to "0" (ex. mask for 3rd bit: 1111 0111) | ||
+ | *#: '''"mask OR value"''' to set to "1" (ex. mask for 3rd bit: 0000 1000) | ||
+ | |||
+ | === To Do 10=== | ||
+ | * [[The CIO Framework - OOP344 20123#0.2 Milestone|Project Milestone 0.2 (Due Monday Nov 12th 23:59)]] | ||
+ | * Challege | ||
+ | *# setBit(unsigned int val, unsigned int bitNo, bool bitVal); | ||
+ | *#: Sets the "bitNo" bit of val to the "bitVal" value | ||
+ | *# char* bits(unsigned int val) | ||
+ | *#: returns a character string holding the bit pattern of val (i.e cout<<bits(0xF7)<<endl, will print 11110111) | ||
+ | *# write the void prnBits(unsigned int val) function (wrote in class) in only one line. | ||
+ | * I tried two of the functions at http://yun811.blogspot.ca/ Yun Yang's oop344 | ||
+ | * My drafts on char* bits(unsigned int val) : http://itactics.wordpress.com/2012/11/20/code-how-to-print-binary/ (Diaoqiang He) | ||
+ | * I have the solutions for all of three functions at my blog - http://linpei.blogspot.ca/ (Linpei Fan) | ||
+ | * I did the void prnBits function in one line: | ||
+ | * void prnBits(int val){ | ||
+ | * for(unsigned int m = 1 << (sizeof(val)*8 -1); m;printf("%d", !!(m & val)),m=m>>1); | ||
+ | * } | ||
+ | * Alina Shtramwasser - email: [mailto:ashtramwasser1@myseneca.ca ashtramwasser1] | ||
+ | * Carlos Conejo's Challenges in : [http://carlosjavi3r.blog.ca/ Carlos's Blog]. | ||
+ | |||
+ | === Resources 10=== | ||
+ | * https://scs.senecac.on.ca/~oop344/pages/content/bitsw.html | ||
+ | * http://en.wikipedia.org/wiki/Bitwise_operators | ||
+ | * http://bit.ly/TpYFOr | ||
+ | |||
+ | == Week 11 - Nov 11 == | ||
+ | === This Week 11=== | ||
+ | * Templates | ||
+ | ** functions | ||
+ | ** classes | ||
+ | |||
+ | === To Do 11=== | ||
+ | * [[The CIO Framework - OOP344 20123#0.3 Milestone|Project Milestone 0.3 - Part 1 (Due Saturday Nov 17th 23:59)]] | ||
+ | ** CField, CDialog and CLabel | ||
+ | |||
+ | * [[The CIO Framework - OOP344 20123#0.3 Milestone|Project Milestone 0.3 - Part 2 (Due Sunday Nov 18th 23:59)]] | ||
+ | **CLineEdit | ||
+ | |||
+ | === Resources 11=== | ||
+ | * http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging | ||
+ | *: to do merging on local repo and basic conflict handling | ||
+ | |||
+ | * Template Specialization and Partial Template specilization | ||
+ | *: http://www.cprogramming.com/tutorial/template_specialization.html | ||
+ | |||
+ | == Week 12 - Nov 18 == | ||
+ | === This Week 12=== | ||
+ | === To Do 12=== | ||
+ | === Resources 12=== | ||
+ | |||
+ | |||
+ | == Week 13 - Nov 25 == | ||
+ | === This Week 13=== | ||
+ | === To Do 13=== | ||
+ | === Resources 13=== | ||
+ | * function of cstring | ||
+ | *: strcat : http://www.cplusplus.com/reference/cstring/strcat/ | ||
+ | *: strstr : http://www.cplusplus.com/reference/cstring/strstr/ | ||
+ | *: strcpy : http://www.cplusplus.com/reference/cstring/strcpy/ | ||
+ | |||
+ | == Week 14 - Dec 2 == | ||
+ | === This Week 14=== | ||
+ | === To Do 14=== | ||
+ | === Resources 14=== | ||
+ | |||
+ | == Week 15 - Dec 9 (Exam Week) == | ||
+ | === This Week 15=== | ||
+ | * Final Exam | ||
+ | *: Room: S3031 | ||
+ | *: Time: 11:30 | ||
+ | *: Date: Wednesday Dec 12th | ||
+ | |||
+ | === To Do 15=== | ||
+ | === Resources 15=== |
Latest revision as of 20:47, 7 December 2012
OOP344 | Weekly Schedule | Student List | Teams | Project | Student Resources
Contents
- 1 OOP344 -- Weekly Schedule 2012/3 (Fall Semester)
- 1.1 Week 1 - Sep 3
- 1.2 Week 2 - Sep 9
- 1.3 Week 3 - Sep 16
- 1.4 Week 4 - Sep 23
- 1.5 Week 5 - Sep 30
- 1.6 Week 6 - Oct 7
- 1.7 Week 7 - Oct 14
- 1.8 Week 8 - Oct 21 (Study Week)
- 1.9 Week 9 - Oct 28
- 1.10 Week 10 - Nov 4
- 1.11 Week 11 - Nov 11
- 1.12 Week 12 - Nov 18
- 1.13 Week 13 - Nov 25
- 1.14 Week 14 - Dec 2
- 1.15 Week 15 - Dec 9 (Exam Week)
OOP344 -- Weekly Schedule 2012/3 (Fall Semester)
- Inclass notes archive: git@github.com:Seneca-OOP344/fardad-archive.git
- Inclass notes: git@github.com:Seneca-OOP344/OOP344-20123.git
Week 1 - Sep 3
This Week 1
- Introduction to Open Source development.
- Collaboration Tools:
- Wiki
- Blog
- IRC
- Code Repository
- Big Blue Button
- Object Orientation Review
To Do 1
- Read Pro-git book
- Chapter One and if possible Chapter Two
- Create an account on github
- Create a blog (anywhere you like)
- 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.
- Create a team of five students and pick a name for you team
- Send an email to me and send your github and team information
- subject of the email should be 344info
- email content
- nickname:
- name:
- surname:
- seneca username:
- github id:
- team name:
- number of team members:
- Create an account on this wiki
- send an email to cdot-wiki-admin@senecac.on.ca and ask for an account, an email will be sent back to you with your userid and a temporary password
- Learn how to do basic editing in a wiki
- Having all the information above add your name to the student list
Resources 1
- Pro-git book
- Git GUI Client for Mac
- Github Client for Windows
- Generating SSH keys for github
- How to register your IRC nickname on freenode
- Compare IRC clients
- How To edit Wiki pages
- How To edit Wiki Cheatsheet
- Blogs
- IRC Clients:
- How to Install
- Great 15 minutes tutorial that will give you basic understanding of Git
Week 2 - Sep 9
This Week 2
- Object Orientation Review
- Encapsulation, Inheritance, Polymorphism
- Languages
- Platforms (Operating System + compiler)
- Multi-file compilation process basics
- compiler, linker
To Do 2
- Complete the to do list of last week
- Send an email to me and send your github and team information
- subject of the email should be 344info
- email content
- nickname:
- name:
- surname:
- seneca username:
- github id:
- team name:
- number of team members:
Resources 2
- Sep 10th Col-notes: note1
- If anybody didn't notice GitBook has translations. Here is Russian -> Русский GitBook
Week 3 - Sep 16
This Week 3
- Pre-Processor Directives (Compiler continued)
- Macros
- #define, #undef
- multi-line macros
- Conditional Compilation
- #ifdef, #ifndef, #if, #elif, #else, #endif, #undef
- Header file safeguards
- non-standard: #pragma once,
- Operators
- Data types
- Integer, floating point, pointer
- signed, unsigned
- pointers
- Storage Class Specifiers
- auto, register, volatile, const
To Do 3
- Complete Teams' List 20123 - OOP344 page, (adding your team name and their members information)
- if you are not member of a team, add your name under "Not in a team" and I will assign you to a team.
- Study chapter two of Pro-Git Book
- Make sure your github account contains your REAL FULL NAME
Resources 3
Week 4 - Sep 23
This Week 4
- Data types (continued) *
- sizeof *
- void, enum
- pointers (continued)*
- pointer arithmetic *
- function pointers
- Storage Class Specifiers
- const
- Statics *
- extern *
- typedef
- Compound Types
- Arrays * , Structures , Unions
- Inheritance
To Do 4
Resources 4
Week 5 - Sep 30
This Week 5
- Operator overload review (B)
- friends review (B)
- recursion (B)
- Virtual, Pure-Virtual, Abstract Classes (B)
- References
- command line arguments
- variable argument list
- The project (introduction, main design and idea) (B)
To Do 5
Resources 5
Week 6 - Oct 7
This Week 6
To Do 6
- I (Fardad) sent an email with following subject oop344 - Testing Group email to all oop344 students
- Make sure you received this email, if you did not, please check your spam filter and make sure it is not filtered.
- If you have not received this email, please let me know as soon as possible so I update my mailing list.
Resources 6
Week 7 - Oct 14
This Week 7
- The Project (Continued)
- Lists
- Arrays
- Linked Lists
To Do 7
- Double check and correct/update your information on Teams page
- due date NOW
- Have your team page ready by using the team page template
- If you already created your team page, modify it so its format matches the team page template.
- If you have not yet created your team page, create it by COPYING the content of the team page template into a newly created page according to the regulations stated on Teams page.
- Due date: NOW
- pull the notes from github and run and walkthrough Test1Frame.cpp with CFrame class to understand how it works and post your questions and answer in blogs.
- When posted, pickup, assign and start working on issues....
Resources 7
Week 8 - Oct 21 (Study Week)
This Week 8 (STUDY BREAK)
To Do 8
Resources 8
Week 9 - Oct 28
This Week 9
- Monday, Midterm TEST
- Working with Git and github
- Linked lists (Queue)
To Do 9
Resources 9
- Etherpad Notes Nov 2/12
- Lecture video for Git: http://www.youtube.com/watch?v=JXusZR41Je0
Challenge!
Add the following methods to queue:
- unsigned int size( );
- int operator[](unsigned int index);
- Note* Did you mean int&?
Challenge Answers
- Yun Yang's version of these two methods is at http://yun811.blogspot.ca/.
- Amir Mobasseri's version can be find http://ammobasseri.wordpress.com/2012/11/01/c-queue/ here!
- Revised version of Amir's code Michael's blog
- - Also I've noticed that Fardad did not write the return variable as a reference, which made it impossible to edit, as done in line 13 of queuetester.cpp, that is updated that as well.
- Michael Wang's version of the functions Michael's blog
- Prasanth's Version - Blog Entry
- Peter's Version - http://peter.ug/queue-cpp-operator-overload/
- Stanislav's Version - here http://stanislavatseneca.blogspot.ca/
- - I decided to go a bit further and I did my operator[] method able to add new Nodes to the end of the Queue if we have index > size, comments are greatly appreciated.
- Minh Khoa (Ken) Nguyen's Version - Ken's blog
- - I actually go with side. I added a variable into the node.
- Carlos Conejo's version (I went a little further: it adds a node with data 0 if you try to reference past the current size so it does not crash): Carlos's Blog.
- Linpei Fan's Version - here Linpei's blog.
Week 10 - Nov 4
This Week 10
- Project Milestone 0.2
- bitwise operators
- and, or, not, exclusive or
- shifts
- determining the value of bits
- masks
- setting the value of bits
- "mask AND value" to set to "0" (ex. mask for 3rd bit: 1111 0111)
- "mask OR value" to set to "1" (ex. mask for 3rd bit: 0000 1000)
To Do 10
- Project Milestone 0.2 (Due Monday Nov 12th 23:59)
- Challege
- setBit(unsigned int val, unsigned int bitNo, bool bitVal);
- Sets the "bitNo" bit of val to the "bitVal" value
- char* bits(unsigned int val)
- returns a character string holding the bit pattern of val (i.e cout<<bits(0xF7)<<endl, will print 11110111)
- write the void prnBits(unsigned int val) function (wrote in class) in only one line.
- setBit(unsigned int val, unsigned int bitNo, bool bitVal);
* I tried two of the functions at http://yun811.blogspot.ca/ Yun Yang's oop344 * My drafts on char* bits(unsigned int val) : http://itactics.wordpress.com/2012/11/20/code-how-to-print-binary/ (Diaoqiang He) * I have the solutions for all of three functions at my blog - http://linpei.blogspot.ca/ (Linpei Fan)
- I did the void prnBits function in one line:
- void prnBits(int val){
- for(unsigned int m = 1 << (sizeof(val)*8 -1); m;printf("%d", !!(m & val)),m=m>>1);
- }
- Alina Shtramwasser - email: ashtramwasser1
- Carlos Conejo's Challenges in : Carlos's Blog.
Resources 10
- https://scs.senecac.on.ca/~oop344/pages/content/bitsw.html
- http://en.wikipedia.org/wiki/Bitwise_operators
- http://bit.ly/TpYFOr
Week 11 - Nov 11
This Week 11
- Templates
- functions
- classes
To Do 11
- Project Milestone 0.3 - Part 1 (Due Saturday Nov 17th 23:59)
- CField, CDialog and CLabel
Resources 11
- http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging
- to do merging on local repo and basic conflict handling
- Template Specialization and Partial Template specilization
Week 12 - Nov 18
This Week 12
To Do 12
Resources 12
Week 13 - Nov 25
This Week 13
To Do 13
Resources 13
- function of cstring
Week 14 - Dec 2
This Week 14
To Do 14
Resources 14
Week 15 - Dec 9 (Exam Week)
This Week 15
- Final Exam
- Room: S3031
- Time: 11:30
- Date: Wednesday Dec 12th