Difference between revisions of "Weekly Schedule 20123 - OOP344"
(→Resources 9) |
(→To Do 10) |
||
(55 intermediate revisions by 16 users not shown) | |||
Line 62: | Line 62: | ||
* 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 == | ||
Line 202: | Line 204: | ||
=== This Week 9 === | === This Week 9 === | ||
* Monday, Midterm TEST | * Monday, Midterm TEST | ||
+ | * Working with Git and github | ||
+ | * Linked lists (Queue) | ||
=== To Do 9 === | === To Do 9 === | ||
=== Resources 9 === | === Resources 9 === | ||
− | unsigned int size( ) | + | * [http://etherpad.proximity.on.ca:9001/p/oop3449_nov2a Etherpad Notes Nov 2/12] |
− | Yun Yang's version is | + | * Lecture video for Git: http://www.youtube.com/watch?v=JXusZR41Je0 |
− | + | === Challenge! === | |
− | + | Add the following methods to queue: | |
− | Amir Mobasseri's version can be find | + | * 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 == | == Week 10 - Nov 4 == | ||
=== This Week 10=== | === 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=== | === 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=== | === 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 == | == Week 11 - Nov 11 == | ||
=== This Week 11=== | === This Week 11=== | ||
− | == To Do 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=== | === 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 == | == Week 12 - Nov 18 == | ||
Line 232: | Line 296: | ||
=== To Do 13=== | === To Do 13=== | ||
=== Resources 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 == | == Week 14 - Dec 2 == | ||
Line 241: | Line 308: | ||
== Week 15 - Dec 9 (Exam Week) == | == Week 15 - Dec 9 (Exam Week) == | ||
=== This Week 15=== | === This Week 15=== | ||
+ | * Final Exam | ||
+ | *: Room: S3031 | ||
+ | *: Time: 11:30 | ||
+ | *: Date: Wednesday Dec 12th | ||
+ | |||
=== To Do 15=== | === To Do 15=== | ||
=== Resources 15=== | === Resources 15=== |
Latest revision as of 21: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