Difference between revisions of "Weekly Schedule 20132 - OOP344"

From CDOT Wiki
Jump to: navigation, search
(Blog posts 3)
(Blog posts 3)
 
(78 intermediate revisions by 18 users not shown)
Line 74: Line 74:
 
== Week 2 - May 12==
 
== Week 2 - May 12==
 
=== This Week 2===
 
=== This Week 2===
* Git review
+
* Git review - [http://rogerdudler.github.io/git-guide/ Git_Guide]
 
*:  [http://git-scm.com/docs/git-clone clone], [http://git-scm.com/docs/git-pull pull], [http://git-scm.com/docs/git-push push]
 
*:  [http://git-scm.com/docs/git-clone clone], [http://git-scm.com/docs/git-pull pull], [http://git-scm.com/docs/git-push push]
 
*:  [http://git-scm.com/docs/git-add add], [http://git-scm.com/docs/git-commit commit], [http://git-scm.com/docs/git-branch branch]
 
*:  [http://git-scm.com/docs/git-add add], [http://git-scm.com/docs/git-commit commit], [http://git-scm.com/docs/git-branch branch]
Line 93: Line 93:
 
=== Resources 2===
 
=== Resources 2===
  
* [http://www.cplusplus.com/doc/tutorial/pointers/ Everything you always wanted to know about pointers, but were afraid to ask]
+
* Single resource that will give you all the knowledge you need about pointers, including information given in the last two classes. WARNING! Reading online tutorials is NOT a substitute to visiting in-class lectures.
*: Single resource that will give you all the knowledge you need about pointers, including information given in the last two classes. WARNING! Reading online tutorials is NOT a substitute to visiting in-class lectures.
+
*: [http://www.cplusplus.com/doc/tutorial/pointers/ Everything you always wanted to know about pointers, but were afraid to ask]
 +
 
 +
* Type Casing in C++.
 +
*: [https://www.youtube.com/watch?v=oa_fWKQACAo Casting in C++ (YouTube Video)]
 +
*: [http://www.cplusplus.com/doc/tutorial/typecasting/ Type casting in detail (Documentation)]
 +
 
 +
* Void Type
 +
*: [http://msdn.microsoft.com/en-us/library/ebh2k5sc.aspx Pointers to Type Void (MSDN link)]
 +
 
 +
* Function Pointers
 +
*: [https://www.youtube.com/watch?v=ZBJoGKVnZYI C++ Function Pointers].
 +
*: [http://www.learncpp.com/cpp-tutorial/78-function-pointers/ C++ Function Pointers in detail].
  
 
=== blog posts 2===
 
=== blog posts 2===
Line 109: Line 120:
 
*: define (macros)
 
*: define (macros)
 
*: include
 
*: include
* typedefs
+
* [http://msdn.microsoft.com/en-us/library/05w82thz(v=vs.80).aspx typedefs]
* Variable Argument list
+
* Variable Argument list [http://admixdev.com/2013/06/05/59/ example]
 
* [http://www.cplusplus.com/doc/tutorial/namespaces/ Namespaces]
 
* [http://www.cplusplus.com/doc/tutorial/namespaces/ Namespaces]
 
* friends
 
* friends
Line 119: Line 130:
  
 
=== Resources 3===
 
=== Resources 3===
 +
 +
* C++ Command Line Arguments
 +
*: [https://www.youtube.com/watch?v=rAVIm-g8alQ Basic Tutorial].
 +
 +
* Variable Arguments Handling
 +
*: [http://www.cplusplus.com/reference/cstdarg/ <stdarg.h> types & macros].
 +
 
=== Blog posts 3===
 
=== Blog posts 3===
 
* <u>'''AscToInt Solutions'''</u>
 
* <u>'''AscToInt Solutions'''</u>
Line 129: Line 147:
  
 
:[http://matthewtorrance.blogspot.ca/2013/05/asctoint.html AscToInt Function]
 
:[http://matthewtorrance.blogspot.ca/2013/05/asctoint.html AscToInt Function]
 +
 +
:[http://hamabama.ru/blog/atoi.htm SecB Dmitry Yastremskiy AscToInt Function]
  
 
:[http://dtkerroop344.wordpress.com/2013/05/21/the-ascii-conversion-challenge/ SecA Drew Terrance Kerr]
 
:[http://dtkerroop344.wordpress.com/2013/05/21/the-ascii-conversion-challenge/ SecA Drew Terrance Kerr]
Line 146: Line 166:
 
:[http://mattmaceachern.blogspot.ca/2013/05/blog-post.html SecA Matt MacEachern]
 
:[http://mattmaceachern.blogspot.ca/2013/05/blog-post.html SecA Matt MacEachern]
  
:[http://jijungmin90.tumblr.com/post/51031179606/simple-char-to-intlI SecA Jungmin Ji]
+
:[http://jungmin-ji.tumblr.com/post/51031179606/simple-char-to-int SecA Jungmin Ji]
  
 
:[http://namniak.blogspot.ca/2013/05/asctoint.html Vadim Namniak's Solution]
 
:[http://namniak.blogspot.ca/2013/05/asctoint.html Vadim Namniak's Solution]
Line 184: Line 204:
  
 
:[http://nstrcat.blogspot.ca/ SecB Prabhleen Bhupal]
 
:[http://nstrcat.blogspot.ca/ SecB Prabhleen Bhupal]
 +
 +
:[http://kazilemannor.wordpress.com/2013/06/05/to-do3-char-nstrcat/ SecB Zhenyang Chen]
 +
 +
:[http://haydeezpluto.wordpress.com/2013/06/07/variable-argument-list-string-concatenation-3/ Amal Khandelwal]
  
 
== Week 4 - May 26==
 
== Week 4 - May 26==
Line 193: Line 217:
 
*: auto
 
*: auto
 
*: [http://www.learncpp.com/cpp-tutorial/811-static-member-variables/ static]
 
*: [http://www.learncpp.com/cpp-tutorial/811-static-member-variables/ static]
*: extern
+
*: [http://www.learncpp.com/cpp-tutorial/42-global-variables/ extern]
 
** const
 
** const
**: pointers
+
**: [http://www.cprogramming.com/reference/pointers/const_pointers.html pointers]
 
**: methods
 
**: methods
* compilation process
+
* [http://faculty.cs.niu.edu/~mcmahon/CS241/Notes/compile.html compilation process]
* pre-processor directives
+
* [http://www.cplusplus.com/doc/tutorial/preprocessor/ pre-processor directives]
*: Include safe guards
+
*: [http://en.wikipedia.org/wiki/Include_guard Include safe guards]
* [http://www.learncpp.com/cpp-tutorial/122-virtual-functions/ Virtuals]  
 
*: Review
 
*: Pure Virtual
 
*: Abstract Base Classes
 
  
 
=== To Do 4===
 
=== To Do 4===
Line 209: Line 229:
 
=== Resources 4===
 
=== Resources 4===
 
=== blog posts 4===
 
=== blog posts 4===
 +
*[http://brackethunter.blogspot.ca/2013/06/moveboxcpp.html SecB Brad Stuart - Movebox.cpp]
  
 
== Week 5 - June 2==
 
== Week 5 - June 2==
 
=== This Week 5===
 
=== This Week 5===
 +
* Const
 +
*: variable declaration
 +
*: Pointers
 +
*: References
 +
*: Methods
 +
* Statics
 +
*: variables [http://stackoverflow.com/questions/3698043/static-variables-in-c crowd source explanation]
 +
*: [http://www.learncpp.com/cpp-tutorial/812-static-member-functions/ Methods]
 +
* [http://www.learncpp.com/cpp-tutorial/122-virtual-functions/ Virtuals]
 +
*: Review
 +
*: Pure Virtual  [http://www.learncpp.com/cpp-tutorial/126-pure-virtual-functions-abstract-base-classes-and-interface-classes/ Pure Virtual & Abstract Base Classes]
 +
*: Abstract Base Classes
 +
 
=== To Do 5===
 
=== To Do 5===
 
=== Resources 5===
 
=== Resources 5===
Line 217: Line 251:
 
== Week 6 - June 9==
 
== Week 6 - June 9==
 
=== This Week 6===
 
=== This Week 6===
 +
* Tuesday class, cancelled (makeup session and more during study break)
 +
* conui review and Initial repo settings
 +
* class member access operator review
 +
*: arrow and dot
 +
* literals
 +
* sizeof()
 +
* operators (more in detail)
 +
 
=== To Do 6===
 
=== To Do 6===
 +
# Add your information to [[Teams' List 20132 - OOP344 | Teams1 List]] - '''''Due NOW!'''''
 +
# After adding your information to the [[Teams' List 20132 - OOP344 | Teams1 List]], click on your team name and update your '''''Team Page''''' to match your team requirements.  - '''''Due NOW!'''''
 +
# Add your your information to [[Student List 20132 - OOP344 | The Student List Page]]. '''''Due NOW!'''''
 +
# complete your task in [[Project R0.1 20132- OOP344 | Release R0.1]] - '''''Due Monday 17th, 23:59'''''
 +
 
=== Resources 6===
 
=== Resources 6===
 
=== blog posts 6===
 
=== blog posts 6===
 
== Week 7 - June 16==
 
== Week 7 - June 16==
 
=== This Week 7===
 
=== This Week 7===
 +
 
=== To Do 7===
 
=== To Do 7===
 +
# Add resize to IntArr
 +
 
=== Resources 7===
 
=== Resources 7===
 
=== blog posts ===
 
=== blog posts ===
 +
*[http://dtkerroop344.wordpress.com/2013/06/18/simple-linked-list/ A simple linked list]
 +
*[http://matthewtorrance.blogspot.ca/2013/06/queue-add-and-remove.html Queue: Add & Remove]
 +
 
== Week 8 - June 23 (Study Break)==
 
== Week 8 - June 23 (Study Break)==
 
=== This Week 8===
 
=== This Week 8===
 +
* makeup session and more (June, Tuesday 25th)
 +
*: 9:00 to ???
 +
*: please make sure you are rested and ready for a long day of study, new materials and reviews
 +
 
=== To Do 8===
 
=== To Do 8===
 
=== Resources 8===
 
=== Resources 8===
 
=== blog posts 8===
 
=== blog posts 8===
 +
 
== Week 9 - June 30==
 
== Week 9 - June 30==
 
=== This Week 9===
 
=== This Week 9===
 +
* New keywords
 +
*: inline
 +
*: auto
 +
*: nullptr
 +
* Enum Review
 +
* Introduction to Recursion [http://www.cplusplus.com/articles/D2N36Up4/ some documentations]
 +
* Dyanimic Lists
 +
* Doubly Linked Lists
 +
* [http://www.cplusplus.com/doc/tutorial/exceptions/ Intro to Exceptions]
 +
 
=== To Do 9===
 
=== To Do 9===
 +
* Complete Doubly Linked List Implementation
 +
* Blog about it
 
=== Resources 9===
 
=== Resources 9===
 
=== blog posts 9===
 
=== blog posts 9===
 +
 +
*[http://kazilemannor.wordpress.com/2013/07/05/dll/ SecB Zhenyang Chen - DLL]
 +
*[http://brackethunter.blogspot.ca/2013/07/dllist-with-ui.html Brad Stuart - DLList with UI]
 +
*[http://markieta.blogspot.ca/2013/07/doubly-linked-list-insertbefore.html Christopher Markieta - insertBefore]
 +
*[http://hamabama.ru/blog/dll.htm Dmitry Yastremskiy - DLL]
 +
 
== Week 10 - July 7==
 
== Week 10 - July 7==
 
=== This Week 10===
 
=== This Week 10===
 +
* Exceptions [http://www.tutorialspoint.com/cplusplus/cpp_exceptions_handling.htm tutorial: try catch]
 +
*: Exception classes and objects
 +
*: Throw
 +
*: Try
 +
*: Catch
 +
* Function Stack Review
 +
* Glance at Standard Template Library
 +
* [http://www.cplusplus.com/doc/tutorial/templates/ Templates]
 +
*: Templated classes and functions
 +
*: Default template parameters
 +
*: Templating Techniques (Inheritance with templates, mix-ins)
 +
* Multiple Inheritance
 +
*: Multiple Class Inheritance
 +
*: Glance at Interfaces
 +
*: Diamond Inheritance Issues (Template solutions)
 +
 
=== To Do 10===
 
=== To Do 10===
 +
* Split up work with teammates for A2, complete skeletons of classes (Due July 12)
 +
* Complete Template Exercise and blog about it
 +
 
=== Resources 10===
 
=== Resources 10===
 
=== blog posts 10===
 
=== blog posts 10===
 +
* Stuck on "Templates Homework" (need help please) [http://admixdev.com/2013/07/13/multi-inheritance-struggle/ My Blog post] - Alexander Snurnikov
 +
      Check my blog post, after word ATTENTION. Also, you doubled our code in two of your classes - Artem - '''//Thank you:) - Alex'''
 +
 +
* Working version of Templates homework, please feel free to [http://lisyonok85.wordpress.com/?p=14 check this out and comment] - Artem Luzyanin
 +
 +
* Templates excercise[http://template-inheritance.blogspot.ca/ Template Blog Post]- Prabhleen Bhupal
 +
 +
* [http://brackethunter.blogspot.ca/2013/07/int-to-bin-v01.html Int to Bin attempt] - Brad Stuart (I can't find the base code for the templates stuff, so I created this one for making an array of whatevers)
 +
 
== Week 11 - July 14==
 
== Week 11 - July 14==
 
=== This Week 11===
 
=== This Week 11===
 +
*Static Variable review
 +
*The compilation process [http://stackoverflow.com/questions/6264249/how-does-the-compilation-linking-process-work compilation steps]
 +
*:Compilation order
 +
*:The linker
 +
*:Common Linker Errors
 +
*Multiple Inheritance Cont
 +
*:Virtual Inheritance
 +
*Advanced Template Use
 +
*:Template functions cont
 +
*:Template definition in CPPs
 +
*Const review [http://duramecho.com/ComputerInformation/WhyHowCppConst.html why & how?!]
 +
*New Keywords
 +
*:Volatile
 +
*:Union
 +
*Arrays
 +
*:Basic arrays review
 +
*:Heterogeneous Arrays
 +
*Standard Template Library
 +
*:std::string class
 +
*[http://www.cplusplus.com/doc/tutorial/typecasting/ Constrained Casting]
 +
*:static_cast
 +
*:reinterpret_cast
 +
*:const_cast
 +
*:dynamic_cast
 +
*Bit-wise Introduction
 +
 
=== To Do 11===
 
=== To Do 11===
 +
*A2 0.4 Milestone - Due July 19th
 +
*No code exercise this week... INSTEAD: Blog about how you feel about the world of programming, where you want to go with your career, what professional options you are considering, etc!
 
=== Resources 11===
 
=== Resources 11===
 +
* Does anybody know any good link to study heterogeneous array???
 +
 
=== blog posts 11===
 
=== blog posts 11===
 +
* [http://admixdev.com/2013/07/23/how-i-feel-about-the-world-of-programming/ About the World of programming and future at all] - Alexander Snurnikov
 +
* [http://lisyonok85.wordpress.com/2013/07/23/pro-gro-min-whaaa/ The world of art and me] -Artem Luzyanin
 +
* [http://brackethunter.blogspot.ca/2013/07/programming-from-pet-basic-to-php.html/ An old man laments] -Brad Stuart (Link is broken...)
 +
 
== Week 12 - July 21==
 
== Week 12 - July 21==
 
=== This Week 12===
 
=== This Week 12===
 +
*Bitwise operations
 +
*:Bitwise Negation
 +
*:Bitwise AND(&), OR(|), XOR(^)
 +
*:Bit Shifting
 +
*:Circular Bit Shifting
 +
*:Flag definition
 +
*Basic Encryption
 +
*:XOR Cipher with key shifting
 +
*STL
 +
*:std::queue
 +
*:std::vector review
 +
*:std::string review
 +
*:std::iterator review
 +
*:std::find
 +
*:std::sort
 +
*:std::binary_search
 +
*File Streams
 +
*:fstream review
 +
*:fstream flags
 +
*:binary files
 +
*:saving and loading state from binary
 
=== To Do 12===
 
=== To Do 12===
 +
*A2 0.6 Milstone - Due July 26th
 +
* Implement a serialization function on our [https://github.com/Seneca-OOP344/20132notes/blob/master/SecAB/07-July%209/DoublyLinkedList.h Doubly Linked List] that writes the list to a binary file and a load function that loads the list from the binary file. Be sure to keep the list's structure intact. Proper implementations will net the student a bonus 0.5%, blog about result, but do not post code, instead email me your solutions.
 +
 
=== Resources 12===
 
=== Resources 12===
 
=== blog posts 12===
 
=== blog posts 12===
 +
 +
[http://lisyonok85.wordpress.com/?p=20 Artem's success]
 +
 +
[http://markieta.blogspot.ca/2013/07/binary-serialization-of-doubly-linked.html Christopher Markieta]
 +
 
== Week 13 - July 28==
 
== Week 13 - July 28==
 
=== This Week 13===
 
=== This Week 13===

Latest revision as of 21:51, 11 August 2013


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

Under Construction!

Week 1 - May 5

This Week 1

  • Introduction to Open Source development.
  • Collaboration Tools:
    • Wiki
    • Blog
    • IRC
    • Code Repository
      Git, Svn, ....
    • Big Blue Button
  • Etherpad
  • Object Orientation Review
  • C Review
    pointers
    pointers and arrays

To Do 1

Due May 7th (Tuesday) 18:00

  1. Create an account on github
    1. Make sure your account name is presentable. This name will stay with you forever.
    2. Make sure your information on github is complete (real name, email, etc...)
  2. Send ONE email to me containing your git hub id
    subject of the email should be 344Github20132
    email content
    name: Your Name (exactly as it appears on your Seneca student card)
    nickname: Your Nick name
    Git hub ID: your Github id

Due by May 13th, 23:59

  1. Create a blog (anywhere you like)
  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. Read Pro-git book
    Chapter One and Chapter Two
  4. 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; make sure you have the following included in your email.
    • Email subject: Wiki Account Request
    • The subject you are enrolled in: "OOP344"
    • Your Seneca user id
    • Send this email from your Seneca Account only
  5. Learn how to do basic editing in a wiki

Resources 1

Week 2 - May 12

This Week 2

  • Git review - Git_Guide
    clone, pull, push
    add, commit, branch
  • Operators
    review
    Logical
    Arithmetic
    Lazy evaluation
    operators in C
  • pointers (continued)
    arrays
    arithmetic
    void
    functions
  • Default Args

To Do 2

Resources 2

blog posts 2

Week 3 - May 19

This Week 3

  • Real Signature of main()
  • Pre-Processor directives
    define (macros)
    include
  • typedefs
  • Variable Argument list example
  • Namespaces
  • friends

To Do 3

  • program: int AscToInt(const char *num);
  • program: char* nstrcat(char* name, ...) //Basically strcat with >= 1 arguments

Resources 3

Blog posts 3

  • AscToInt Solutions
SecA Artem's Solution
Codes from SECTION_B DONG LI
Converting a string of numbers to an integer.
AscToInt Function
SecB Dmitry Yastremskiy AscToInt Function
SecA Drew Terrance Kerr
SecA Chiyoung Choi
SecB Oleksandr Snurnikov, (ascToInt() function)
SecB Na Li
SecA Herman Hum
SecA Shehzin Arshad
SecA Jose Ramirez
SecA Matt MacEachern
SecA Jungmin Ji
Vadim Namniak's Solution
Zhun Xue
Brad Stuart's Improved Solution
Christopher Markieta
Amal Khandelwal
SecB Thanushaa Thaninayagam
SecA Chisa Takata
SecA Dimple Amin
SecB Kevin Sidhu
  • nstrcat Solutions
SecA Drew Terrance Kerr
SecA Herman Hum
SecB Oleksandr Snurnikov
Brad Stuart
SecA Matt MacEachern
SECTION_B DONG LI
SecB Kevin Sidhu
SecB Prabhleen Bhupal
SecB Zhenyang Chen
Amal Khandelwal

Week 4 - May 26

This Week 4

To Do 4

Resources 4

blog posts 4

Week 5 - June 2

This Week 5

To Do 5

Resources 5

blog posts 5

Week 6 - June 9

This Week 6

  • Tuesday class, cancelled (makeup session and more during study break)
  • conui review and Initial repo settings
  • class member access operator review
    arrow and dot
  • literals
  • sizeof()
  • operators (more in detail)

To Do 6

  1. Add your information to Teams1 List - Due NOW!
  2. After adding your information to the Teams1 List, click on your team name and update your Team Page to match your team requirements. - Due NOW!
  3. Add your your information to The Student List Page. Due NOW!
  4. complete your task in Release R0.1 - Due Monday 17th, 23:59

Resources 6

blog posts 6

Week 7 - June 16

This Week 7

To Do 7

  1. Add resize to IntArr

Resources 7

blog posts

Week 8 - June 23 (Study Break)

This Week 8

  • makeup session and more (June, Tuesday 25th)
    9:00 to ???
    please make sure you are rested and ready for a long day of study, new materials and reviews

To Do 8

Resources 8

blog posts 8

Week 9 - June 30

This Week 9

To Do 9

  • Complete Doubly Linked List Implementation
  • Blog about it

Resources 9

blog posts 9

Week 10 - July 7

This Week 10

  • Exceptions tutorial: try catch
    Exception classes and objects
    Throw
    Try
    Catch
  • Function Stack Review
  • Glance at Standard Template Library
  • Templates
    Templated classes and functions
    Default template parameters
    Templating Techniques (Inheritance with templates, mix-ins)
  • Multiple Inheritance
    Multiple Class Inheritance
    Glance at Interfaces
    Diamond Inheritance Issues (Template solutions)

To Do 10

  • Split up work with teammates for A2, complete skeletons of classes (Due July 12)
  • Complete Template Exercise and blog about it

Resources 10

blog posts 10

  • Stuck on "Templates Homework" (need help please) My Blog post - Alexander Snurnikov
     Check my blog post, after word ATTENTION. Also, you doubled our code in two of your classes - Artem - //Thank you:) - Alex
  • Int to Bin attempt - Brad Stuart (I can't find the base code for the templates stuff, so I created this one for making an array of whatevers)

Week 11 - July 14

This Week 11

  • Static Variable review
  • The compilation process compilation steps
    Compilation order
    The linker
    Common Linker Errors
  • Multiple Inheritance Cont
    Virtual Inheritance
  • Advanced Template Use
    Template functions cont
    Template definition in CPPs
  • Const review why & how?!
  • New Keywords
    Volatile
    Union
  • Arrays
    Basic arrays review
    Heterogeneous Arrays
  • Standard Template Library
    std::string class
  • Constrained Casting
    static_cast
    reinterpret_cast
    const_cast
    dynamic_cast
  • Bit-wise Introduction

To Do 11

  • A2 0.4 Milestone - Due July 19th
  • No code exercise this week... INSTEAD: Blog about how you feel about the world of programming, where you want to go with your career, what professional options you are considering, etc!

Resources 11

  • Does anybody know any good link to study heterogeneous array???

blog posts 11

Week 12 - July 21

This Week 12

  • Bitwise operations
    Bitwise Negation
    Bitwise AND(&), OR(|), XOR(^)
    Bit Shifting
    Circular Bit Shifting
    Flag definition
  • Basic Encryption
    XOR Cipher with key shifting
  • STL
    std::queue
    std::vector review
    std::string review
    std::iterator review
    std::find
    std::sort
    std::binary_search
  • File Streams
    fstream review
    fstream flags
    binary files
    saving and loading state from binary

To Do 12

  • A2 0.6 Milstone - Due July 26th
  • Implement a serialization function on our Doubly Linked List that writes the list to a binary file and a load function that loads the list from the binary file. Be sure to keep the list's structure intact. Proper implementations will net the student a bonus 0.5%, blog about result, but do not post code, instead email me your solutions.

Resources 12

blog posts 12

Artem's success

Christopher Markieta

Week 13 - July 28

This Week 13

To Do 13

Resources 13

blog posts 13

Week 14 - August 4

This Week 14

To Do 14

Resources 14

blog posts 14

Week 15 - August 11 (Exam Week)

This Week 15

To Do 15

Resources 15

blog posts 15