Course Schedule of Topics and Due Dates
-
Course schedule is subject to change as the semester progresses.
-
All work should be submitted by 11:59PM (in Richmond, VA) on the date due.
Week | Lecture (Tue) | Lecture (Thr) | Lab (Fri) |
---|---|---|---|
1 | Aug 29: Module 1: Introduction (Due Thr Sep 7) Read Text: Chapter 2 Read Unix Tutorial: Intro, T1, T2, T3 Slides: Lecture 1 |
Aug 31: Read Unix Tutorial: T4, T5, T6 Slides: Lecture 2 |
Sep 1: Lab 1 Unix/Linux (Due Thu Sep 7) |
2 | Sep 5: Read Text: Chapter 3 Module 2: Functions, Strings, and Command-Line Arguments (Due Tue Sep 12) Slides: Lecture 3 |
Sep 7: Module 3: Arrays, Vectors, and File I/O (Due Thr Sep 14) Slides: Lecture 4 |
Sep 8: Lab 2 File I/O (Due Thu Sep 14) |
3 | Sep 12: Read Text: Chapter 17 Slides: Lecture 5 |
Sep 14: Slides: Lecture 6 |
Sep 15: Lab 3 Pointers and References (Due Thu Sep 21) |
4 | Sep 19: Read Text: Chapter 9 Slides: Lecture 7 Module 4: Classes: Abstraction and Encapsulation (Due Tue Sep 26) |
Sep 21: Lecture 8 |
Sep 22: Lab 4 Classes (Due Thu Sep 28) |
5 | Sep 26: Lecture 9 Module 5: Scope, Destructors, and Composition (Due Tue Oct 3) |
Sep 28: Lecture 10 |
Sep 29: Lab 5 Inheritance and Polymorphism (Due Thu Oct 5) |
6 | Oct 3: Read Text: Chapter 5 Lecture 11 Module 6: Errors and Debugging (Due Thr Oct 12) |
Oct 5: Lecture 12 |
Oct 6: Lab 6 Debugging (Due Thu Oct 12) |
7 | Oct 10: Midterm Exam | Oct 12: Lecture 13 |
Oct 13: Lab 7 Valgrind (Due Thu Oct 26) |
8 | Oct 17: Fall Break No Class | Oct 19: Lecture 14 Module 7: Regular expressions (Due Thu Oct 26) |
Oct 20: Lab 8 Regular expressions (Due Thu Oct 26) |
9 | Oct 24: Guest Visit (Director of Information Security John Craft) Lecture 15 Module 8: Build Tools: make (Due Tue Oct 31) |
Oct 26: Lecture 16 Module 9: Templates (Due Thu Nov 2) |
Oct 27: Lab 9 Templates (Due Thu Nov 2) |
10 | Oct 31: Lecture 17 Module 10: REST API (Due Tue Nov 7) |
Nov 2: Lecture 18 Project Module 11: REST API Part 2 (Due Thu Nov 9) |
Nov 3: Work on Project |
11 | Nov 7: Lecture 19 Module 12: C++ Smart Pointers (Due Tue Nov 14) |
Nov 9: Module 13: REST API Part 3 (Due Thu Nov 16) | Nov 10: Lab 10 git & GitHub (Due Thu Nov 16) |
12 | Nov 14: Lecture 21: Build Pipeline Notes: Unit Testing Module 14: generating docs, static analysis, unit testing(Due Tue Nov 21) |
Nov 16: Project Example: Music Store Guide to Markdown |
Nov 17: Work on Project |
13 | Nov 21: Lecture 23: C++ Security Risks |
Nov 23: Thanksgiving Break No Class |
Nov 24: Thanksgiving Break No Class |
14 | Nov 28: Lecture 24: Software Development Life Cycle (SDLC) |
Nov 30: Lecture 25: Design Patterns Part 1 |
Dec 1: Project Due |
15 | Dec 5: Work on Project Unit Tests Project Unit Test Examples: Music Store |
Dec 7: Lecture 27: Review for Exam |
Dec 8: No Lab Project Unit Tests Due |
16 | Dec 11 (MONDAY 2:00PM): Final Exam Section 2 |
Dec 14 (2:00PM): Final Exam Section 1 |