Week | Topics | Resource links |
Sept 5-9 | Notes:
1. Sept 6 is a holiday (Labour Day), VIU is closed. 2. No labs are held this week, labs start Sept 12th | |
Course mechanics, administrivia | youtube, outline, labs, quizzes, project, technotes | |
How to succeed in 160 | youtube, getting help, studying | |
Intro to the software development process | youtube, slides | |
Intro to languages, syntax, semantics | youtube, slides | |
Intro to the edit/compile/execute cycle
(and command lines vs IDEs) |
youtube, slides | |
Intro to C++ syntax/layout | youtube, slides | |
Sept 12-16 | Documentation, style, and standards | youtube, slides, standards |
Constants, variables, data types, and computation | youtube, slides | |
Output/input with printf/scanf | youtube, slides | |
Sept 19-23 | Output/input with cout/cin | youtube slides |
Introductory program design and implementation | youtube | |
Libraries, using functions and parameters | youtube slides | |
Function/library examples | youtube | |
Sept 24-O2 | Creating our own functions | youtube slides |
Intro to scopes (local/global) | youtube slides | |
Pass-by-reference parameters | youtube slides | |
Modularity, structured and top down design | youtube slides | |
Oct 3-7 | If/else, switch, bool | youtube slides |
Error checking input | youtube slides | |
intro to recursion | youtube slides | |
Oct 10-14 | Note Monday the 10th is a holiday, no lectures/labs that day (normal lab held on Friday the 14th) | |
intro to git and make | youtube slides (not testable, just for your understanding) | |
intro to testing | youtube slides | |
Oct 17-21 | loops: while, do while, for, scope | youtube slides |
break, continue, nested loops, errors | youtube slides | |
intro to debugging, debuggers, and code tracing | youtube slides | |
Oct 24-28 | intro to arrays | youtube slides |
arrays as parameters | youtube slides | |
array searching (linear/binary), sorting(bubblesort) | youtube slides | |
Oct 31-N4 | null terminated character arrays, cstring library | youtube, slides |
conversion to/from text arrays (160 focus on the cstring aspects) | youtube, slides | |
intro to the course project | youtube, project web page | |
Nov 7-11 | Study week, no labs or lectures | |
Nov 14-18 | parameter default values, function overloading | youtube, slides |
intro to structs | youtube, slides | |
more about structs | youtube , slides, sample code | |
Nov 21-25 | intro to C-style file I/O | youtube, slides |
intro to pointers and their applications | youtube, slides | |
dynamic memory allocation (new/delete in 159, malloc/free in 160), and pointer bugs | youtube, slides | |
Nov 28-D2 | pointers to structs, dynamic data structures | youtube, slides |
linked list implementation using structs | youtube, slides | |
Dec 5-9 | intro to information hiding and abstract data types (ADTs) | youtube, slides |
intro to classes and object oriented programming | youtube, slides | |
Course wrap-up, exam overview (material, question styles, format) | youtube, slides | |
Dec 12-21 | Official final exam period | - |
Extra topics to be introduced if/as time permits | intro to compilation, linking, and loading | youtube, slides |
command line arguments (argc, argv) | youtube, slides | |
using the C++ string class | youtube, slides | |
intro to C++ style file I/O | youtube, slides | |
intro to namespaces | youtube, slides | |
two dimensional arrays | youtube, slides | |
random number generators | youtube slides |