Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | Lecture Topic | Lab Topic | Deadline/Event |
Week 1Mon Aug 28 | Introduction and Machine Model | No Lab | |
Tue Aug 29 | |||
Wed Aug 30 | Procedural Abstraction, Testing and Debugging | ||
Thu Aug 31 | |||
Fri Sep 1 | |||
Week 2Mon Sep 4 | No Class - Labor Day | 1. Getting Started, IDE Setup | |
Tue Sep 5 | C++ Setup Demo Session | ||
Wed Sep 6 | Pointers | ||
Thu Sep 7 | |||
Fri Sep 8 | Lab Due each Sunday 8pm | ||
Week 3Mon Sep 11 | Pointers and Arrays | 2. Machine Model, Testing, Unit Testing Framework | |
Tue Sep 12 | |||
Wed Sep 13 | Compound Objects |
Project 1 Due Wed Sep 13 at 8pm |
|
Thu Sep 14 | |||
Fri Sep 15 | |||
Week 4Mon Sep 18 | Strings, Streams, and IO | 3. Pointers and Arrays, Detecting Undefined Behavior | Add/Drop Deadline Mon Sep 18 |
Tue Sep 19 | |||
Wed Sep 20 | Abstract Data Types in C | Entry Survey Due Wed Sep 20 at 8pm |
|
Thu Sep 21 | |||
Fri Sep 22 | |||
Week 5Mon Sep 25 | Abstract Data Types in C++ | 4. Strings and IO, Version Control with git | |
Tue Sep 26 | |||
Wed Sep 27 | Derived Classes and Inheritance |
Project 2 Due Wed Sep 27 at 8pm |
|
Thu Sep 28 | |||
Fri Sep 29 | |||
Week 6Mon Oct 2 | Polymorphism | 5. Abstract Data Types, Mini-Project | |
Tue Oct 3 | |||
Wed Oct 4 | Container ADTs I | ||
Thu Oct 5 | |||
Fri Oct 6 | |||
Week 7Mon Oct 9 | Container ADTs II | 6. Inheritance, Polymorphism, Debuggers | |
Tue Oct 10 | |||
Wed Oct 11 | Memory Models and Dynamic Memory | Project 3 Checkpoint Due Wed Oct 11 at 8pm |
|
Thu Oct 12 | |||
Fri Oct 13 | |||
Week 8Mon Oct 16 | No Class - Fall Break | No Lab | Fall Break |
Tue Oct 17 | |||
Wed Oct 18 | Managing Dynamic Memory | ||
Thu Oct 19 | |||
Fri Oct 20 | |||
Week 9Mon Oct 23 | Deep Copies and The Big Three | 7. Array-Based Data Structures, Dynamic Memory, Deep Copies | |
Tue Oct 24 |
Project 3 Due Tue Oct 24 at 8pm |
||
Wed Oct 25 | Linked Lists | ||
Thu Oct 26 | |||
Fri Oct 27 | |||
Week 10Mon Oct 30 | No Class - Midterm Exam | No Lab | Midterm Exam Mon Oct 30 at 7-9pm |
Tue Oct 31 | Alternate Midterm Exam Tue Oct 31 at 7-9pm |
||
Wed Nov 1 | Iterators | ||
Thu Nov 2 | |||
Fri Nov 3 | |||
Week 11Mon Nov 6 | Function Objects and Impostor Syndrome | 8. Iterators and Functors | |
Tue Nov 7 | |||
Wed Nov 8 | Recursion and Tail Recursion | ||
Thu Nov 9 | |||
Fri Nov 10 | |||
Week 12Mon Nov 13 | Structural Recursion | 9. Recursion | |
Tue Nov 14 |
Project 4 Due Tue Nov 14 at 8pm |
||
Wed Nov 15 | Binary Search Trees and Maps | ||
Thu Nov 16 | |||
Fri Nov 17 | |||
Week 13Mon Nov 20 | No Class | No Lab | |
Tue Nov 21 | |||
Wed Nov 22 | No Class -Thanksgiving Break | Thanksgiving Break | |
Thu Nov 23 | |||
Fri Nov 24 | |||
Week 14Mon Nov 27 | Exceptions | 10. Maps, Exceptions, and Final Exam Review | |
Tue Nov 28 | Project 5 Checkpoint Due Tue Nov 28 at 8pm |
||
Wed Nov 29 | Pathways in Computing Panel Discussion | ||
Thu Nov 30 | |||
Fri Dec 1 | |||
Week 15Mon Dec 4 | No Class | No Lab | Project 5 Due Mon Dec 4 at 8pm |
Tue Dec 5 | |||
Wed Dec 6 | No Class | Exit Survey Due Wed Dec 6 at 8pm |
|
Thu Dec 7 | |||
Fri Dec 8 |
Final Exam Fri Dec 8 10:30am-12:30pm Alternate Final Exam Fri Dec 8 1:30pm-3:30pm |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Week 1 May 2 - 5 |
01 Introduction and Machine Model 02 Procedural Abstraction, Testing and Debugging 03 Pointers |
No Lab 01 Getting Started |
|
Week 2 May 8 - 12 |
04 Pointers and Arrays 05 Compound Objects 06 Strings, Streams, and IO 07 Abstract Data Types in C |
02 Machine Model, Testing, Unit Testing Framework 03 Pointers and Arrays, Detecting undefined behavior |
Project 1 Tue May 9 |
Week 3 May 15 - 19 |
08 Abstract Data Types in C++ 09 Derived Classes and Inheritance 10 Polymorphism 11 Container ADTs I |
04 Strings and IO 05 Project 3 Intro |
Project 2 Wed May 17 |
Week 4 May 22 - 26 |
12 Container ADTs II 13 Memory Models and Dynamic Memory Exam Review Exam |
06 Polymorphism No Lab |
Exam Thu May 25 |
Week 5 May 29 - June 2 |
No Class - Memorial Day 14 Managing Dynamic Memory 15 Deep Copies and The Big Three 16 LinkedLists |
07 Container ADTs 08 Dynamic Memory & Deep Copies |
Project 3 Thur June 1 |
Week 6 June 5 - 9 |
17 Iterators 18 Recursion and Tail Recursion 19 Structural Recursion 20 Binary Search Trees and Maps |
09 Iterators 10 Recursion |
Project 4 Fri June 9 |
Week 7 June 12 - 16 |
21 Function Pointers 22 Function Objects and Imposter Syndrome 23 Exceptions No Class |
11 Functors and Maps 12 Final Exam Review (optional) |
|
Week 8 Jun 19 |
13 No Class (Last day of classes) |
Project 5 Mon June 19 |
|
Final Exam
Alternate |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Week 1 Jan 2 - Jan 5 |
01 Introduction and Machine Model |
No Lab | |
Week 2 Jan 9 - 12 |
02 Procedural Abstraction, Testing, and Debugging 03 Pointers |
01 IDE Setup | |
Week 3 Jan 16 - 20 |
No lecture - MLK Day 04 Arrays |
02 Machine Model, Testing, Unit Testing Framework |
Project 1 Wed Jan 18 |
Week 4 Jan 23 - 27 |
05 Compound Objects 06 Strings, Streams, and IO |
03 Pointers and Arrays, Detecting Undefined Behavior |
Entry survey Wed Jan 25 |
Week 5 Jan 30 - Feb 3 |
07 Abstract Data Types in C 08 Abstract Data Types in C++ |
04 Strings and IO |
Project 2 Fri Feb 3 |
Week 6 Feb 6 - 10 |
09 Derived Classes and Inheritance 10 Polymorphism |
05 Project 3 Intro | |
Week 7 Feb 13 - 17 |
11 Container ADTs and Generic Programming 12 Container ADT Interfaces and Invariants |
06 Polymorphism |
Project 3 Checkpoint CANCELLED Fri Feb 17 |
Week 8 Feb 20 - 24 |
13 Memory Models and Dynamic Memory 14 Managing Dynamic Memory |
07 Container ADTs |
Project 3 Fri Feb 24 |
Spring Break |
|||
Week 9 Mar 6 - 10 |
No lecture No lecture |
No Lab |
Midterm Exam
Alternate |
Week 10 Mar 13 - 17 |
15 Deep Copies and The Big Three 16 Linked Lists |
08 Dynamic Memory and Deep Copies | |
Week 11 Mar 20 - 24 |
17 Iterators 18 Recursion |
09 Iterators | |
Week 12 Mar 27 - 31 |
19 Structural Recursion 20 Binary Search trees and Maps |
10 Recursion |
Project 4 Wed Mar 29 |
Week 13 Apr 3 - 7 |
21 Function Objects and Imposter Syndrome 22 Exceptions |
11 Final Exam Review and Reflection | |
Week 14 Apr 10 - 14 |
Panel Sessions No lecture |
No Lab | |
Week 15 Apr 17 - 21 |
No lecture |
No Lab |
Project 5
Exit Survey |
Final Exam
Alternate |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | Lecture Topic | Lab Topic | Deadline |
Week 1Mon Aug 29 | Introduction and Machine Model | Getting Started, Intro Pragmatics Demo | |
Tue Aug 30 | |||
Wed Aug 31 | Procedural Abstraction, Testing and Debugging | ||
Thu Sep 1 | |||
Fri Sep 2 | |||
Week 2Mon Sep 5 | No Class - Labor Day | ||
Tue Sep 6 | |||
Wed Sep 7 | Pointers | Machine Model, Testing, IDE Setup, Version Control | |
Thu Sep 8 | |||
Fri Sep 9 | |||
Week 3Mon Sep 12 | Pointers and Arrays | ||
Tue Sep 13 | |||
Wed Sep 14 | Compound Objects | Pointers and Arrays |
Project 1 Due Wed Sep 14 at 8pm |
Thu Sep 15 | |||
Fri Sep 16 | |||
Week 4Mon Sep 19 | Strings, Streams, and IO | Add/Drop Deadline, Mon Sep 19 | |
Tue Sep 20 | |||
Wed Sep 21 | Abstract Data Types in C | Strings and IO |
Entry Survey Due Wed Sep 21 at 8pm |
Thu Sep 22 | |||
Fri Sep 23 | |||
Week 5Mon Sep 26 | Abstract Data Types in C++ | ||
Tue Sep 27 | |||
Wed Sep 28 | Derived Classes and Inheritance | Abstract Data Types |
Project 2 Due Wed Sep 28 at 8pm |
Thu Sep 29 | |||
Fri Sep 30 | |||
Week 6Mon Oct 3 | Polymorphism | ||
Tue Oct 4 | |||
Wed Oct 5 | Container ADTs I | Polymorphism | |
Thu Oct 6 | |||
Fri Oct 7 | |||
Week 7Mon Oct 10 | Container ADTs II |
Project 3 Checkpoint Due Mon Oct 10 at 8pm |
|
Tue Oct 11 | |||
Wed Oct 12 | Memory Models and Dynamic Memory | No Lab | |
Thu Oct 13 | |||
Fri Oct 14 | |||
Week 8Mon Oct 17 | No Class - Fall Break | Fall break | |
Tue Oct 18 | |||
Wed Oct 19 | Managing Dynamic Memory | Container ADTs | |
Thu Oct 20 | |||
Fri Oct 21 |
Project 3 Due Fri Oct 21 at 8pm |
||
Week 9Mon Oct 24 | Deep Copies and The Big Three | ||
Tue Oct 25 | |||
Wed Oct 26 | No Class - Midterm Exam | No Lab | Midterm Exam Wed Oct 26 at 7-9pm |
Thu Oct 27 | Alternate Midterm Exam Thu Oct 27 at 7-9pm |
||
Fri Oct 28 | |||
Week 10Mon Oct 31 | Linked Lists | ||
Tue Nov 1 | Dynamic Memory and Deep Copies | ||
Wed Nov 2 | Iterators | ||
Thu Nov 3 | |||
Fri Nov 4 | |||
Week 11Mon Nov 7 | Function Objects and Impostor Syndrome | ||
Tue Nov 8 | Iterators and Functors | ||
Wed Nov 9 | Recursion and Tail Recursion | ||
Thu Nov 10 | |||
Fri Nov 11 | |||
Week 12 Sun Nov 13 |
Project 4 Due Sun Nov 13 at 8pm |
||
Mon Nov 14 | Structural Recursion | ||
Tue Nov 15 | Recursion | ||
Wed Nov 16 | Auto, Maps, Range-Based For Loops | ||
Thu Nov 17 | |||
Fri Nov 18 | |||
Week 13Mon Nov 21 | Student Panel | ||
Tue Nov 22 | No Lab | ||
Wed Nov 23 | No Class - Thanksgiving Break | Thanksgiving Break | |
Thu Nov 24 | |||
Fri Nov 25 | |||
Week 14Mon Nov 28 | Exceptions | Final Exam Review and Reflection | |
Tue Nov 29 | |||
Wed Nov 30 | No Lecture |
Project 5 Checkpoint Due Wed Nov 30 at 8pm |
|
Thu Dec 1 | |||
Fri Dec 2 | |||
Week 15Mon Dec 5 | What's Next? | No Lab | |
Tue Dec 6 | |||
Wed Dec 7 | No Lecture | ||
Thu Dec 8 | |||
Fri Dec 9 |
Project 5 Due Fri Dec 9 at 8pm |
||
Week 16Mon Dec 12 | |||
Tue Dec 13 |
Exit Survey Due Tue Dec 13 at 8pm |
||
Wed Dec 14 |
Final Exam Wed Dec 14 at 10:30am-12:30pm Alternate Final Exam Wed Dec 14 at 1:30pm-3:30pm |
||
Thu Dec 15 | |||
Fri Dec 16 |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | Lecture Topic | Lab Topic | Deadline | |
Week 1Mon May 2 | ||||
Tue May 3 | 1. Introduction and Machine Model | Getting Started | ||
Wed May 4 | 2. Procedural Abstraction, Testing and Debugging | |||
Thu May 5 | 3. Pointers | Machine Model, Testing, IDE Setup | ||
Fri May 6 | ||||
Week 2Mon May 9 | 4. Pointers and Arrays | |||
Tue May 10 | 5. Strings, Streams, and IO | Pointers and Arrays |
Project 1 Due Tue May 10 at 8pm |
|
Wed May 11 | 6. Compound Objects | |||
Thu May 12 | 7. Abstract Data Types in C | Strings and IO | ||
Fri May 13 | ||||
Week 3Mon May 16 | 8. Abstract Data Types in C++ | Add/Drop Deadline, Mon May 16 | ||
Tue May 17 | 9. Derived Classes and Inheritance | Abstract Data Types |
Project 2 Due Tue May 17 at 8pm |
|
Wed May 18 | Euchre Social (optional) |
Entry Survey Due Wed May 18 at 8pm |
||
Thu May 19 | 10. Polymorphism | Polymorphism | ||
Fri May 20 | ||||
Week 4Mon May 23 | 11. Container ADTs I | |||
Tue May 24 | 12. Container ADTs II | Extra OH | ||
Wed May 25 | 13. Memory Models and Dynamic Memory | |||
Thu May 26 | 14. Managing Dynamic Memory | Container ADTs | ||
Fri May 27 |
Project 3 Due Fri May 27 at 8pm |
|||
Week 5Mon May 30 | No Class - Memorial Day | |||
Tue May 31 | 15. Deep Copies and The Big Three | No Lab | ||
Wed Jun 1 | No Class - Midterm Exam | Midterm Exam Wed Jun 1 at 7-9pm |
||
Thu Jun 2 | 16. Linked Lists | Dynamic Memory & Deep Copies | ||
Fri Jun 3 | ||||
Week 6Mon Jun 6 | 17. Iterators | |||
Tue Jun 7 | 18. Recursion and Tail Recursion | Extra OH | ||
Wed Jun 8 | 19. Structural Recursion | |||
Thu Jun 9 | 20. Function Objects and Impostor Syndrome | Recursion |
Project 4 Due Thur Jun 9 at 8pm |
|
Fri Jun 10 | ||||
Week 7Mon Jun 13 | 21. Auto, Maps, Range-Based For Loops | |||
Tue Jun 14 | 22. Exceptions | Iterators and Functors | ||
Wed Jun 15 | 23. Containers of Pointers and What's Next | |||
Thu Jun 16 | No Lecture | Final Exam Review | ||
Fri Jun 17 | ||||
Week 8Mon Jun 20 | Special Topics (Optional!) |
Project 5 Due Mon Jun 20 at 8pm |
||
Tue Jun 21 | ||||
Wed Jun 22 | ||||
Thu Jun 23 | Final Exam Thu Jun 23 at 4-6pm |
|||
Fri Jun 24 | Alternate Final Exam Fri Jun 24 at 8-10am |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | Lecture Topic | Lab Topic | Deadline |
Week 1Mon Jan 3 | No Lab | ||
Tue Jan 4 | |||
Wed Jan 5 | 1. Introduction and Machine Model | ||
Thu Jan 6 | |||
Fri Jan 7 | |||
Week 2Mon Jan 10 | 2. Procedural Abstraction, Testing and Debugging | Lab due Sun 8pm 1. Getting StartedSolution |
|
Tue Jan 11 | |||
Wed Jan 12 | 3. Pointers | ||
Thu Jan 13 | |||
Fri Jan 14 | |||
Week 3Mon Jan 17 | No Lecture - MLK Day | No Lab | |
Tue Jan 18 | |||
Wed Jan 19 | 4. Pointers and Arrays |
Project 1 Due Wed Jan 19 at 8pm |
|
Computing CARES: Resume & Interview Workshop Wed, Jan 19 6-7:30pm REMOTE |
|||
Thu Jan 20 | |||
Fri Jan 21 | |||
Week 4Mon Jan 24 | 5. Const, Compound Objects | Lab due Sun 8pm 2. Pointers and ArraysSolution |
P2 Overview Session Mon, Jan 24 7pm REMOTE Slides Recording |
Tue Jan 25 | Add/Drop Deadline, Tue Jan 25 | ||
Wed Jan 26 | 6. Strings, Streams, and IO | Entry Survey Due Wed Jan 26 at 8pm |
|
Thu Jan 27 | |||
Fri Jan 28 | |||
Week 5Mon Jan 31 | 7. Abstract Data Types in C | Lab due Sun 8pm 3. Strings and IOStructs and C-Style ADTs Solution |
|
Tue Feb 1 | |||
Wed Feb 2 | 8. Abstract Data Types in C++ | ||
Thu Feb 3 | |||
Fri Feb 4 | Project 2 Due Fri Feb 4 at 8pm |
||
Week 6Mon Feb 7 | 9. Derived Classes and Inheritance | Lab due Sun 8pm 4. ClassesC++ Style ADTs Solution |
|
Tue Feb 8 |
P3 Overview Session Tue, Feb 8th 7-8pm REMOTE Slides Recording |
||
Wed Feb 9 | 10. Polymorphism | ||
Thu Feb 10 | |||
Fri Feb 11 | |||
Sat Feb 12 |
Euchre Social Sat, Feb 12 from 12-1:30pm Mason Hall 1427-1469 Slides |
||
Week 7Mon Feb 14 | 11. Container ADTs I | Lab due Sun 8pm 5. PolymorphismSolution |
|
Tue Feb 15 | |||
Wed Feb 16 | 12. Container ADTs II |
Computing CARES: Study Tips and Social with GEECS Wed, Feb 16 6-8pm in BBB 1690 |
|
Thu Feb 17 |
Midterm Review Session Thu, Feb 17 8-10pm Recording WKST |
||
Fri Feb 18 | Project 3 Checkpoint Due Fri Feb 18 at 8pm |
||
Week 8Mon Feb 21 | 13. Memory Models and Dynamic Memory | No Lab | |
Tue Feb 22 | |||
Wed Feb 23 | No Lecture - Midterm Exam | Midterm Exam Wed Feb 23rd at 7-9pm |
|
Thu Feb 24 | Alternate Midterm Exam Thu Feb 24 at 7-9pm |
||
Fri Feb 25 | |||
Week 9Mon Feb 28 | Spring Break | ||
Tue Mar 1 | |||
Wed Mar 2 | |||
Thu Mar 3 | |||
Fri Mar 4 | |||
Week 10Mon Mar 7 | 14. Managing Dynamic Memory | Lab due Sun 8pm 6. Container ADTsSolution |
|
Tue Mar 8 | |||
Wed Mar 9 | 15. Deep Copies and The Big Three |
Computing CARES: How To Be An EECS IA Wed, Mar 9 6-8pm in BBB 1670 |
|
Thu Mar 10 | |||
Fri Mar 11 | |||
Week 11Mon Mar 14 | 16. Linked Lists | Lab due Sun 8pm 7. Dynamic Memory and Deep CopiesSolution |
Project 3 Due Mon Mar 14 at 8pm |
Tue Mar 15 |
CSE Undergraduate Town Hall Tue, Mar 15 6:30-8pm Remote |
||
Wed Mar 16 | 17. Iterators |
P4 Overview Session Wed, Mar 16 7pm REMOTE Recording Slides |
|
Thu Mar 17 | |||
Fri Mar 18 | |||
Week 12Mon Mar 21 | 18. Recursion and Tail Recursion | No Lab | |
Tue Mar 22 | |||
Wed Mar 23 | 19. Structural Recursion | ||
Thu Mar 24 | |||
Fri Mar 25 | Project 4 Due Fri Mar 25 at 8pm |
||
Week 13Mon Mar 28 | 20. Function Objects and Impostor Syndrome | Lab due Sun 8pm 8. RecursionSolution |
|
Tue Mar 29 | |||
Wed Mar 30 | 21. Auto, Maps, Range-Based For Loops |
Computing CARES: Different Avenues in Tech Wed, Mar 30 6-8pm REMOTE |
|
Thu Mar 31 | |||
Fri Apr 1 | |||
Week 14Mon Apr 4 | 22. Exceptions | Lab due Sun 8pm 9. Iterators and FunctorsSolution |
|
Tue Apr 5 | |||
Wed Apr 6 | Catch-up Lecture - as needed | ||
Thu Apr 7 | |||
Fri Apr 8 |
Project 5
Checkpoint Due Fri Apr 8 at 8pm |
||
Week 15Mon Apr 11 | 23. Containers of Pointers and What's Next | Lab due Sun 8pm 10. Final Exam Review and ReflectionSolution |
|
Tue Apr 12 | |||
Wed Apr 13 | Office Hours in Lecture Halls | ||
Thu Apr 14 | |||
Fri Apr 15 | |||
Week 16Mon Apr 18 | No Lecture | No Lab | |
Tue Apr 19 | Project 5 Due Tue Apr 19 at 8pm |
||
Final Exam Review Session Tue, Apr 19 8-10pm REMOTE WKST Slides Recording |
|||
Wed Apr 20 | |||
Thu Apr 21 |
Exit Survey
Part 1
Part 2
Due Thu Apr 21 at 8pm |
||
Fri Apr 22 | Final Exam Fri Apr 22 at 10:30am-12:30pm Alternate Final Exam Fri Apr 22 at 1:30pm-3:30pm |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | Day | Lecture Topic | Lab Topic | Deadline |
Week 1Mon Aug 30 | Tue Aug 31 | Introduction and Machine Model | No Lab | |
Wed Sep 1 | Thu Sep 2 | Procedural Abstraction, Testing and Debugging | ||
Fri Sep 3 | ||||
Week 2Mon Sep 6 | Tue Sep 7 | No Lecture | Labor Day | |
Wed Sep 8 | Thu Sep 9 | Pointers | Intro to Lab, Memory Model | |
Fri Sep 10 | ||||
Week 3Mon Sep 13 | Tue Sep 14 | Pointers and Arrays | Debugging Session | |
Wed Sep 15 | Thu Sep 16 | Strings, Streams, and IO | Pointers and Arrays | |
Fri Sep 17 | Proj 1 Due Fri Sep 17 at 8pm | |||
Week 4Mon Sep 20 | Tue Sep 21 | Compound Objects | Mon Sep 20 Add/Drop Deadline | |
Wed Sep 22 | Thu Sep 23 | Abstract Data Types in C | Strings and IO | Entry Survey Due Wed Sep 22 at 8pm |
Fri Sep 24 | ||||
Week 5Mon Sep 27 | Tue Sep 28 | Abstract Data Types in C++ | ||
Wed Sep 29 | Thu Sep 30 | Derived Classes and Inheritance | Abstract Data Types | |
Fri Oct 1 | Proj 2 Due Fri Oct 1 at 8pm | |||
Week 6Mon Oct 4 | Tue Oct 5 | Polymorphism |
Computing CARES: How to become an EECS IA Panel Recording |
|
Wed Oct 6 | Thu Oct 7 | Container ADTs I | Polymorphism |
"Git Smart" with Profs. Juett and Beaumont
Recording |
Fri Oct 8 | Project 3 Euchre Social | |||
Week 7Mon Oct 11 | Tue Oct 12 | Container ADTs II | P3 Walkthrough | |
Wed Oct 13 | Thu Oct 14 | Memory Models and Dynamic Memory | No Lab | |
Fri Oct 15 | ||||
Week 8Mon Oct 18 | Tue Oct 19 | No Lecture | Fall Break | |
Wed Oct 20 | Thu Oct 21 | Managing Dynamic Memory | Container ADTs | |
Fri Oct 22 | Proj 3 Due Fri Oct 22 at 8pm | |||
Week 9Mon Oct 25 | Tue Oct 26 | Linked Lists | Midterm Review Session | |
Wed Oct 27 | Thu Oct 28 | No Lecture | No Lab | Midterm Exam Wed Oct 27 at 7pm-9pm Alternate Exam Thu Oct 28 at 7pm-9pm |
Fri Oct 29 | ||||
Week 10Mon Nov 1 | Tue Nov 2 | Deep Copies and The Big Three | ||
Wed Nov 3 | Thu Nov 4 | Iterators | Dynamic Memory and Deep Copies |
Computing CARES "Undergraduate Research" Panel
Piazza @ 2785 |
Fri Nov 5 | ||||
Week 11Mon Nov 8 | Tue Nov 9 | Function Objects and Impostor Syndrome | ||
Wed Nov 10 | Thu Nov 11 | Recursion and Tail Recursion | Iterators and Functors | |
Fri Nov 12 | Proj 4 Due Fri Nov 12 at 8pm | |||
Week 12Mon Nov 15 | Tue Nov 16 | Structural Recursion |
Computing CARES "Internship" Panel
Piazza @3208 RSVP |
|
Wed Nov 17 | Thu Nov 18 | Problem Solving with Recursion | Recursion | Project 5 Overview Session |
Fri Nov 19 | ||||
Week 13Mon Nov 22 | Tue Nov 23 | No Lecture | ||
Wed Nov 24 | Thu Nov 25 | No Lecture | No Lab | Thanksgiving Break |
Fri Nov 26 | ||||
Week 14Mon Nov 29 | Tue Nov 30 | Exceptions | ||
Wed Dec 1 | Thu Dec 2 | Juett, Beaumont, Saleem: No Lecture Molaei: TBD |
Final Exam Review and Reflection | |
Fri Dec 3 | ||||
Week 15Mon Dec 6 | Tue Dec 7 | Containers of Pointers and What's Next | ||
Wed Dec 8 | Thu Dec 9 | No Lecture | Final Exam Review Session | |
Fri Dec 10 | Proj 5 Due Fri Dec 10 at 8pm | |||
Mon Dec 13 | Exit Survey Due Mon Dec 13 at 8pm Computing CARES Exit Survery | |||
Tue Dec 14 | Final Exam Tues Dec 14 at 10:30am-12:30pm Alternate Exam Tues Dec 14 at 1:30pm-3:30pm |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | # | Lecture | Lab | Events/Deadlines |
---|---|---|---|---|
Tue May 4 | 1 | Introduction and Machine Model | No lab | |
Wed May 5 | 2 | Procedural Abstraction, Testing, and Debugging | ||
Thu May 6 | 3 | Pointers | Getting Started | |
Fri May 7 | ||||
Mon May 10 | 4 | Arrays and Pointers | ||
Tue May 11 | 5 | Strings, Streams, and IO | Pointers and Arrays | P1 due Tue May 11 |
Wed May 12 | 6 | Compound Objects | IDE Tips/Tricks Project 2 Overview | |
Thu May 13 | 7 | Abstract Data Types in C | Strings and IO | |
Fri May 14 | ||||
Mon May 17 | 8 | Abstract Data Types in C++ | Add/drop deadline | |
Tue May 18 | 9 | Derived Classes and Inheritance | Abstract Data Types | Project 2 due Tue May 18 |
Wed May 19 | 10 | Polymorphism | Euchre Social Project 3 Overview | |
Thu May 20 | 11 | Container ADTs I | Polymorphism | |
Fri May 21 | ||||
Mon May 24 | Program Design Demo Recording Part 2 Code Files | |||
Tue May 25 | 12 | Container ADTs II | euchre.cpp and Midterm Review | |
Wed May 26 | 13 | Memory Models and Dynamic Memory | ||
Thu May 27 | 14 | Managing Dynamic Memory | Container ADTs | |
Fri May 28 | Project 3 due Fri May 28 | |||
Mon May 31 | No Class - Memorial Day | |||
Tue Jun 1 | 15 | Linked Lists | No Lab | |
Wed Jun 2 | No Class - Midterm Exam |
Midterm 7pm Wed Jun 2 Review Session |
||
Thu Jun 3 | 16 | Deep Copies | Linked Structures | |
Fri Jun 4 | ||||
Mon Jun 7 | 17 | Iterators | Project 4 Overview Review Session | |
Tue Jun 8 | 18 | Recursion and Tail Recursion | Dynamic Memory & Deep Copies | |
Wed Jun 9 | 19 | Structural Recursion | Project 4 due Wed Jun 9 | |
Thu Jun 10 | 20 | Functors and Impostor Syndrome | Recursion | |
Fri Jun 11 | ||||
Mon Jun 14 | No Lecture | |||
Tue Jun 15 | 21 |
Maps, auto , and Range-Based Loops
|
Iterators and Functors |
Project 5 Overview Videos
|
Wed Jun 16 | 22 | Error Handling and Exceptions | ||
Thu Jun 17 | 23 | Containers of Pointers and What's Next? | Final Exam Review and Reflection | |
Fri Jun 18 | ||||
Mon Jun 21 | No Lecture | Project 5 due Mon Jun 21 | ||
Tue Jun 22 | ||||
Wed Jun 23 | ||||
Thu Jun 24 |
Final 8am Thu Jun 24 Review Session |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | # | Lecture | Lab | Deadline |
---|---|---|---|---|
Wed 20 Jan | 1 | Introduction and Machine Model | No lab | |
Mon 25 Jan | 2 | Procedural Abstraction, Testing, and Debugging | ||
Wed 27 Jan | 3 | Pointers | ||
Mon 1 Feb | 4 | Arrays |
|
|
Wed 3 Feb | 5 | Strings, Streams, and IO | ||
Mon 8 Feb | 6 | Compound Objects | ||
Wed 10 Feb | 7 | Abstract Data Types in C | ||
Mon 15 Feb | 8 | Abstract Data Types in C++ |
|
|
Wed 17 Feb | 9 | Derived Classes and Inheritance | ||
Mon 22 Feb | 10 | Polymorphism | No lab (well-being day) | |
Wed 24 Feb | No class (well-being day) | |||
Mon 1 Mar | 11 | Container ADTs and Generic Programming | ||
Wed 3 Mar | 12 | Container ADT Interfaces and Invariants | ||
Mon 8 Mar | 13 | Memory Models and Dynamic Memory |
|
|
Wed 10 Mar | 14 | Managing Dynamic Memory | ||
Mon 15 Mar | No class | No lab |
Midterm: 7pm
Tue 16 Mar Alternate: 8am Wed 17 Mar |
|
Wed 17 Mar | No class | |||
Mon 22 Mar | 15 | Deep Copies and The Big Three |
|
|
Wed 24 Mar | No class (well-being day) | |||
Mon 29 Mar | 16 | Linked Lists | ||
Wed 31 Mar | 17 | Iterators | ||
Mon 5 Apr | 18 | Recursion |
|
|
Wed 7 Apr | 19 | Structural Recursion | ||
Mon 12 Apr | 20 | Binary Search Trees and Maps (P5 Examples) | ||
Wed 14 Apr | 21 | Function Objects and Imposter Syndrome | ||
Mon 19 Apr | 22 | Exceptions (optional) | No lab | |
Wed 21 Apr | No class (study day) | |||
Mon 26 Apr | Final Exam |
Final: 7pm
Mon 26 Apr |
||
Tue 27 Apr | Alternate Final Exam (details) |
Alternate: 8am
Tue 27 Apr |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | # | Lecture Topic | Lab Topic | Deadline |
---|---|---|---|---|
Mon 31 Aug | 1 | Introduction and Machine Model | No lab | |
Wed 2 Sep | 2 | Procedural Abstraction, Testing and Debugging | ||
Mon 7 Sep | No class - Labor Day | Getting Started | ||
Wed 9 Sep | 3 | Pointers | ||
Mon 14 Sep | 4 | Arrays | Pointers and Arrays | Project 1 due Mon 14 Sep 8pm |
Wed 16 Sep | 5 | Strings, Streams, and IO | ||
Mon 21 Sep | 6 | Compound Objects | Strings and I/O | |
Wed 23 Sep | 7 | Abstract Data Types in C | ||
Mon 28 Sep | 8 | Abstract Data Types in C++ | Abstract Data Types | Project 2 due Tue 29 Sep 8pm |
Wen 30 Sep | 9 | Derived Classes and Inheritance | ||
Mon 5 Oct | 10 | Polymorphism | Polymorphism | |
Wed 7 Oct | 11 | Container ADTs I | ||
Mon 12 Oct | 12 | Container ADTs II | Container ADTs | |
Wed 14 Oct | 13 | Memory Models and Dynamic Memory | ||
Mon 19 Oct | 14 | Managing Dynamic Memory | Dynamic Memory | Project 3 due Mon 19 Oct 8pm |
Wed 21 Oct | 15 | Midterm Review | ||
Mon 26 Oct | No class - Midterm Exam | No lab | Midterm exam Mon 26 Oct 7:00pm | |
Wed 28 Oct | 16 | Deep Copies and The Big Three | ||
Mon 2 Nov | 17 | Linked Lists | Deep Copies & The Big Three | |
Wed 4 Nov | 18 | Iterators | ||
Mon 9 Nov | 19 | Function Objects and Impostor Syndrome | Recursion | |
Wed 11 Nov | 20 | Recursion | ||
Mon 16 Nov | 21 | Structural Recursion | Functors & Function Pointers | Project 4 due Mon 16 Nov 8pm |
Wed 18 Nov | 22 | Problem Solving with Recursion | ||
Mon 23 Nov | No class - Thanksgiving | No lab | ||
Wed 25 Nov | ||||
Mon 30 Nov | 23 | Exceptions | Project 5 Help | Project 5 due Fri 4 Dec 8pm |
Wed 2 Dec | 24 | Containers of Pointers | ||
Mon 7 Dec | 25 | Final Review | Final Exam Review | |
Thu 10 Dec | Final Exam | Final exam Thu 10 Dec 10:30am |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | # | Lectures | Sessions | Labs | Deadline |
---|---|---|---|---|---|
Tue 5 May | 1 |
Introduction and Machine Model
Worksheet Reading |
No lab | ||
Wed 6 May | 2 |
Procedural Abstraction, Testing and Debugging
Worksheet Reading |
|||
Thu 7 May | 3 |
Pointers
Worksheet Reading |
Introduction, Memory Model
Worksheet |
||
Fri 8 May | |||||
Mon 11 May | 4 |
Arrays and Pointers
Worksheet Reading |
Project 1 due Mon 11 May 11:59pm | ||
Tue 12 May | 5 |
Strings, Streams, and IO
Worksheet Reading |
Pointers and Arrays
Worksheet |
||
Wed 13 May | 6 |
Compound Objects
Worksheet Reading |
Review | ||
Thu 14 May | No Lecture - Assessment |
Strings and IO
Worksheet |
Assessment 1, Lectures 1-4, Thu 14 May
Information Practice |
||
Fri 15 May | |||||
Mon 18 May | 7 | Abstract Data Types in C Worksheet Reading |
Add/Drop Deadline, Mon 18 May | ||
Tue 19 May | 8 | Abstract Data Types in C++ Worksheet Reading |
Structs Worksheet |
||
Wed 20 May | 9 | Derived Classes and Inheritance Worksheet Reading |
|||
Thu 21 May | 10 | Polymorphism Worksheet Reading |
Abstract Data Types Worksheet |
Project 2 due, Thu 21 May 11:59pm | |
Fri 22 May | |||||
Mon 25 May | No Class - Memorial Day | ||||
Tue 26 May | 11 | Container ADTs I Worksheet Reading |
Polymorphism Worksheet |
||
Wed 27 May | 12 | Container ADTs II Worksheet Reading |
Review | ||
Thu 28 May | No Lecture - Assessment | Container ADTs Worksheet |
Assessment 2, Lectures 5-10, Thu 28 May | ||
Fri 29 May | |||||
Mon 1 Jun | 13 | Memory Models and Dynamic Memory Worksheet Reading |
|||
Tue 2 Jun | 14 | Managing Dynamic Memory Worksheet Reading |
Mid-Term Check-In Worksheet |
||
Wed 3 Jun | 15 | Deep Copies and The Big Three Worksheet Reading |
Project 3 due Wed 3 Jun 11:59pm | ||
Thu 4 Jun | 16 | Linked Lists Worksheet Reading |
Review | Dynamic Memory and The Big Three Worksheet |
|
Fri 5 Jun | Late Add/Drop Deadline, Friday June 5 | ||||
Mon 8 Jun | No Lecture - Assessment | Assessment 3, Lectures 11-15, Mon 8 Jun | |||
Tue 9 Jun | 17 | Iterators Worksheet Reading |
Linked Lists Worksheet |
||
Wed 10 Jun | 18 | Recursion and Tail Recursion Worksheet Reading |
|||
Thu 11 Jun | 19 | Structural Recursion Worksheet Reading |
Recursion Worksheet |
||
Fri 12 Jun | Project 4 due Fri 12 Jun 11:59pm | ||||
Mon 15 Jun | 20 | Function Objects and Impostor Syndrome Worksheet Reading |
|||
Tue 16 Jun | 21 | Problem Solving with Recursion Worksheet Reading |
Structural Recursion and Functors Worksheet |
||
Wed 17 Jun | 22 | Exceptions Worksheet Reading |
|||
Thu 18 Jun | 23 | Containers of Pointers and What's Next Worksheet Reading |
Review | P5, Maps, and Reflection Worksheet |
|
Fri 19 Jun | Assessment 4, Lectures 16-22, Fri 19 Jun | ||||
Mon 22 Jun | Project 5 due, Wed 24 Jun 11:59pm |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | # | Lecture Topic | Lab Topic | Deadline |
---|---|---|---|---|
Wed 8 Jan | 1 | Introduction and Machine Model | No lab | |
Mon 13 Jan | 2 |
Procedural Abstraction, Testing and Debugging
|
Getting Started | |
Wed 15 Jan | 3 | Pointers | ||
Mon 20 Jan | No class - MLK Day | No lab | Project 1 due Tue 21 Jan 8pm | |
Wed 22 Jan | 4 | Pointers and Arrays | ||
Mon 27 Jan | 5 | Strings, Streams, and IO | Pointers and Arrays | |
Wed 29 Jan | 6 | Compound Objects | ||
Mon 3 Feb | 7 | Abstract Data Types in C | Strings and I/O | Project 2 due Fri 7 Feb 8pm |
Wed 5 Feb | 8 | Abstract Data Types in C++ | ||
Mon 10 Feb | 9 | Derived Classes and Inheritance | Abstract Data Types | |
Wed 12 Feb | 10 | Polymorphism | ||
Mon 17 Feb | 11 | Container ADTs I | Polymorphism | |
Wed 19 Feb | 12 | Container ADTs II | ||
Mon 24 Feb | 13 | Memory Models and Dynamic Memory | Container ADTs | Project 3 due Fri 28 Feb 8pm |
Wed 26 Feb | 14 | Managing Dynamic Memory | ||
Mon 2 Mar | No class - Spring Break | No lab | ||
Wed 4 Mar | No class - Spring Break | |||
Mon 9 Mar | 15 | Midterm Review | No lab | Midterm exam Wed 11 Mar 7:00pm |
Wed 11 Mar | No class - Midterm Exam | |||
Mon 16 Mar | 16 | Deep Copies and The Big Three | Dynamic Memory | |
Wed 18 Mar | 17 | Linked Lists | ||
Mon 23 Mar | 18 | Iterators | Deep Copies & The Big Three | |
Wed 25 Mar | 19 | Function Objects and Impostor Syndrome | ||
Mon 30 Mar | 20 | Recursion | Recursion | Project 4 due Wed 1 Apr 8pm |
Wed 1 Apr | 21 | Structural Recursion | ||
Mon 6 Apr | 22 | Problem Solving with Recursion | Functors | |
Wed 8 Apr | 23 | Exceptions | ||
Mon 13 Apr | 24 | Containers of Pointers | Final Exam Review | |
Wed 15 Apr | 25 | Final Review | ||
Mon 20 Apr | TBA | No lab | Project 5 due Tue 21 Apr 8pm | |
Mon 27 Apr | Final Exam | Final exam Mon 27 Apr 10:30am |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | # | Lecture Topic | Lab Topic | Deadline |
---|---|---|---|---|
Wed Sep 4 | 1 | Introduction and Machine Model | No lab | |
Mon Sep 9 | 2 |
Procedural Abstraction, Testing and Debugging
|
Getting Started | |
Wed Sep 11 | 3 | Pointers | ||
Mon Sep 16 | 4 | Pointers and Arrays | Pointers and Arrays | Project 1 due Tue Sep 17 8 pm |
Wed Sep 18 | 5 | Strings, Streams, and IO | ||
Mon Sep 23 | 6 | Compound Objects | Strings and IO | |
Wed Sep 25 | 7 | Abstract Data Types in C | ||
Mon Sep 30 | 8 | Abstract Data Types in C++ | Abstract Data Types | Project 2 due Fri Oct 4 8 pm |
Wed Oct 2 | 9 | Derived Classes and Inheritance | ||
Mon Oct 7 | 10 | Polymorphism | Polymorphism | |
Wed Oct 9 | 11 | Container ADTs I | ||
Mon Oct 14 | No class - Fall Break | No lab | ||
Wed Oct 16 | 12 | Container ADTs II | ||
Mon Oct 21 | 13 | Memory Models and Dynamic Memory | Container ADTs | Project 3 due Fri Oct 25 8 pm |
Wed Oct 23 | 14 | Managing Dynamic Memory | ||
Mon Oct 28 | 15 | Midterm Review | No lab | Midterm exam Wed Oct 30 7:00 pm |
Wed Oct 30 | No Class - Midterm Exam | |||
Mon Nov 4 | 16 | Deep Copies and The Big Three | Dynamic Memory | |
Wed Nov 6 | 17 | Linked Lists | ||
Mon Nov 11 | 18 | Iterators | Deep Copies | |
Wed Nov 13 | 19 | Function Objects and Impostor Syndrome | ||
Mon Nov 18 | 20 | Recursion and Tail Recursion | Recursion | Project 4 due Wed Nov 20 8 pm |
Wed Nov 20 | 21 | Structural Recursion | ||
Mon Nov 25 | 22 | Problem Solving with Recursion | Functors & Function Pointers | |
Wed Nov 27 | No Class - Thanksgiving | |||
Mon Dec 2 | 23 | Exceptions | Final Exam Review | Project 5 due Tue Dec 10 8 pm |
Wed Dec 4 | 24 | Containers of Pointers | ||
Mon Dec 9 | Final Review | No lab | ||
Wed Dec 11 | TBA | |||
Tue Dec 17 | Final Exam | No lab | Final exam Tue Dec 17 10:30 am |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: Web Backend | P5: BST/Map + Piazza Classifier |
Day | # | Lecture Topic | Lab Topic | Deadline |
---|---|---|---|---|
Tue 7 May | 1 | Introduction and Machine Model | No lab | |
Wed 8 May | 2 |
Procedural Abstraction, Testing and Debugging
|
Getting Started | |
Thu 10 May | 3 | Pointers | ||
Mon 13 May | 4 | Pointers and Arrays | Pointers and Arrays | Project 1 due Mon 13 May 8pm |
Tue 14 May | 5 | Strings, Streams, and IO | ||
Wed 15 May | 6 | Compound Objects | Strings and IO | |
Thu 16 May | 7 | Abstract Data Types in C | ||
Mon 20 May | 8 | Abstract Data Types in C++ | Abstract Data Types | Project 2 due Tue 21 May 8pm |
Tue 21 May | 9 | Derived Classes and Inheritance | ||
Wed 22 May | 10 | Polymorphism | Polymorphism | |
Thu 23 May | 11 | Container ADTs I | ||
Mon 27 May | No class - Memorial Day | No lab | ||
Tue 28 May | 12 | Container ADTs II | Container ADTs | |
Wed 29 May | 13 | Midterm Review | Project 3 due Fri 31 May 8pm |
|
Thu 30 May | 14 | Memory Models and Dynamic Memory | Midterm Exam Review | |
Mon 3 June | 15 | Managing Dynamic Memory | Midterm exam Tue 4 June 6pm |
|
Tue 4 June | No Class - Midterm Exam | No lab | ||
Wed 5 June | 16 | Deep Copies and The Big Three | Dynamic Memory | |
Thu 6 June | 17 | Linked Lists | ||
Mon 10 Jun | 18 | Iterators | Deep Copies | |
Tue 11 Jun | 19 | Function Objects and Impostor Syndrome | ||
Wed 12 Jun | 20 | Recursion and Tail Recursion | Functors & Function Pointers | Project 4 due Thu 13 Jun 8pm |
Thu 13 Jun | 21 | Structural Recursion | ||
Mon 17 Jun | 22 | Problem Solving with Recursion | Recursion | |
Tue 18 Jun | 23 | Exceptions | ||
Wed 19 Jun | 24 | Containers of Pointers | Final Exam Review | Project 5 due Mon 24 Jun 8pm |
Thu 20 Jun | 25 | Final Review | ||
Mon 24-26 Jun | No class | No lab | Final exam Thu 27 Jun 8am |
|
Thu 27 Jun | Final Exam |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: RPN Calculator | P5: BST/Map + Piazza Classifier |
Day | # | Lecture Topic | Lab Topic | Deadline |
---|---|---|---|---|
Wed 9 Jan | 1 | Introduction and Machine Model | No lab | |
Mon 14 Jan | 2 |
Procedural Abstraction, Testing and Debugging
|
Getting Started | |
Wed 16 Jan | 3 | Pointers | ||
Mon 21 Jan | No class - MLK Day | No lab | Project 1 due Tue 22 Jan 8pm | |
Wed 23 Jan | 4 | Pointers and Arrays | ||
Mon 28 Jan | 5 | Strings, Streams, and IO | Pointers and Arrays | |
Wed 30 Jan | No class - Too cold | |||
Mon 4 Feb | 6 | Compound Objects | Strings and IO | |
Wed 6 Feb | 7 | Abstract Data Types in C | ||
Mon 11 Feb | 8 | Abstract Data Types in C++ | Abstract Data Types | Project 2 due Mon 11 Feb 8pm |
Wed 13 Feb | 9 | Derived Classes and Inheritance | ||
Mon 18 Feb | 10 | Polymorphism | Polymorphism | |
Wed 20 Feb | 11 | Container ADTs I | ||
Mon 25 Feb | 12 | Container ADTs II | Container ADTs | Project 3 due Thu 28 Feb 8pm |
Wed 27 Feb | 13 | Memory Models and Dynamic Memory | ||
Mon 4 Mar | No class - Spring Break | No lab | ||
Wed 6 Mar | No class - Spring Break | |||
Mon 11 Mar | 14 | Managing Dynamic Memory | No lab | Midterm exam Wed 13 Mar 7:00pm |
Wed 13 Mar | No class - Midterm Exam | |||
Mon 18 Mar | 16 | Deep Copies and The Big Three | Dynamic Memory | |
Wed 20 Mar | 17 | Linked Lists | ||
Mon 25 Mar | 18 | Iterators | Deep Copies | |
Wed 27 Mar | 19 | Function Objects and Impostor Syndrome | ||
Mon 1 Apr | 20 | Recursion and Tail Recursion | Recursion | Project 4 due Tue 2 Apr 8pm |
Wed 3 Apr | 21 | Structural Recursion | ||
Mon 8 Apr | 22 | Problem Solving with Recursion | Functors & Function Pointers | |
Wed 10 Apr | 23 | Exceptions | ||
Mon 15 Apr | 24 | Containers of Pointers | Final Exam Review | Project 5 due Fri 19 Apr 8pm |
Wed 17 Apr | 25 | Final Review | ||
Mon 22 Apr | No class | No lab | Final exam Fri 26 Apr 10:30am | |
Fri 26 Apr | Final Exam |
Links |
Canvas | Piazza | Gradescope | Autograder | Labs | Files |
Projects |
P1: Stats | P2: Seam Carving | P3: Euchre | P4: RPN Calculator | P5: BST/Map + Piazza Classifier |
Day | # | Lecture Topic | Lab Topic | Deadline |
---|---|---|---|---|
Wed 5 Sep | 1 | Introduction and Machine Model | No lab | |
Mon 10 Sep | 2 | Procedural Abstraction, Testing and Debugging | Getting Started | |
Wed 12 Sep | 3 | Pointers | ||
Mon 17 Sep | 4 | Pointers and Arrays | Pointers and Arrays | Project 1 due Tue 18 Sep 8pm |
Wed 19 Sep | 5 | Strings, Streams, and IO | ||
Mon 24 Sep | 6 | Compound Objects | Strings and IO | |
Wed 26 Sep | 7 | Abstract Data Types in C | ||
Mon 1 Oct | 8 | Abstract Data Types in C++ | Abstract Data Types | Project 2 due Fri 5 Oct 8pm |
Wed 3 Oct | 9 | Derived Classes and Inheritance | ||
Mon 8 Oct | 10 | Polymorphism | Polymorphism | |
Wed 10 Oct | 11 | Container ADTs I | ||
Mon 15 Oct | No class - Fall Break | No lab | ||
Wed 17 Oct | 12 | Container ADTs II | ||
Mon 22 Oct | 13 | Memory Models and Dynamic Memory | Container ADTs | Project 3 due Fri 26 Oct 8pm |
Wed 24 Oct | 14 | Managing Dynamic Memory | ||
Mon 29 Oct | 15 | Midterm Review | No lab | Midterm exam Wed 31 Oct 7:00pm |
Wed 31 Oct | No class - Midterm Exam | |||
Mon 5 Nov | 16 | Deep Copies and The Big Three | Dynamic Memory | |
Wed 7 Nov | 17 | Linked Lists | ||
Mon 12 Nov | 18 | Iterators | Deep Copies | |
Wed 14 Nov | 19 | Function Objects and Impostor Syndrome | ||
Mon 19 Nov | 20 | Recursion and Tail Recursion | No lab | Project 4 due Mon 19 Nov 8pm |
Wed 21 Nov | 21 | Structural Recursion | ||
Mon 26 Nov | 22 | Problem Solving with Recursion | Functors & Function Pointers | |
Wed 28 Nov | 23 | Exceptions | ||
Mon 3 Dec | 24 | Containers of Pointers | Recursion | Project 5 due Fri 7 Dec 8pm |
Wed 5 Dec | 25 | Final Review | ||
Mon 10 Dec | Cancelled | No lab | Final exam Fri 14 Dec 10:30am | |
Fri 14 Dec | Final Exam |