Lectures
Computer science fundamentals, with programming in C++. Build a statistical analysis tool, an image processing program, a Euchre card game, a machine learning algorithm, and a text editor. Analyze and implement foundational data structures. Syllabus
If there's something not on these forms, you can reach us at eecs280admin@umich.edu.
Day | Lecture Topic | Lab Topic | Deadline |
Week 1Mon Aug 25 | 1. Course Introduction, Intro to C++ | No Lab | |
Tue Aug 26 | Setup Walkthrough Sessions Tue Aug 26 at 3-4:30pm |
||
Wed Aug 27 | 2. Types, Control Structures, and Procedural Abstraction | ||
Thu Aug 28 | |||
Fri Aug 29 | |||
Week 2Mon Sep 1 | No Class - Labor Day | 1. Intro to Lab, C++ Fundamentals, Pragmatics | |
Tue Sep 2 | |||
Wed Sep 3 | 2.5. Catch Up Lecture (participation credit counts toward lecture 7) | ||
Thu Sep 4 | |||
Fri Sep 5 | |||
Week 3Mon Sep 8 | 3. Machine Model, Part 1 |
2. Machine Model, Pointers/References, Call Stack, UTF Tutorial
Quiz 1. Low-stakes practice taking online quiz.
|
|
Tue Sep 9 | |||
Wed Sep 10 | 4. Machine Model, Part 2 | ||
Thu Sep 11 | |||
Fri Sep 12 |
Project 1 Due Fri Sep 12 at 8pm |
||
Week 4Mon Sep 15 | 5. const, Structs, and C-Style ADTs |
3. C-style ADTs, Streams and I/O, Assertions+UB Tutorial
Quiz 2. Lectures 1-4, labs 1-2, project 1, C++ setup.
|
Add/Drop Deadline Mon Sep 15 |
Tue Sep 16 | |||
Wed Sep 17 | 6. Streams and I/O |
Entry Survey Due Wed Sep 17 at 8pm |
|
Thu Sep 18 | |||
Fri Sep 19 | |||
Week 5Mon Sep 22 | 8. Abstract Data Types in C++ | 4. Classes, C++ ADTs, Mini-Project | |
Tue Sep 23 | |||
Wed Sep 24 | 9. Derived Classes and Inheritance | ||
Thu Sep 25 | |||
Fri Sep 26 |
Project 2 Due Fri Sep 26 at 8pm |
||
Week 6Mon Sep 29 | 10. Polymorphism |
5. Inheritance, Polymorphism, Debugging Tutorial
Quiz 3. Lectures 5-8, labs 3-4, project 2.
|
|
Tue Sep 30 | |||
Wed Oct 1 | 11. Arrays, Pointer Arithmetic, C-Style Strings | ||
Thu Oct 2 | |||
Fri Oct 3 | |||
Week 7Mon Oct 6 | 12. Array-Based Data Structures, Time Complexity | 6. Array-Based Data Structures | |
Tue Oct 7 | |||
Wed Oct 8 | 13. Sorted Data Structures, Templates |
Project 3 Checkpoint Due Wed Oct 8 at 8pm |
|
Thu Oct 9 | |||
Fri Oct 10 | |||
Week 8Mon Oct 13 | No Class - Fall Break | No Lab | |
Tue Oct 14 | |||
Wed Oct 15 | 14. Containers and Iterators | ||
Thu Oct 16 | |||
Fri Oct 17 | |||
Week 9Mon Oct 20 | 15. Memory Models and Dynamic Memory |
7. Containers, Iterators
Quiz 4. Lectures 9-13, labs 5-6, project 3 checkpoint.
|
|
Tue Oct 21 | |||
Wed Oct 22 | 16. Managing Dynamic Memory |
Project 3 Due Wed Oct 22 at 8pm |
|
Thu Oct 23 | |||
Fri Oct 24 | |||
Week 10Mon Oct 27 | No Class - Midterm Exam | No Lab |
Midterm Exam Mon Oct 27, 7-9pm |
Tue Oct 28 |
Alternate Midterm Exam Tue Oct 28, 7-9pm |
||
Wed Oct 29 | 17. Deep Copies and The Big Three | ||
Thu Oct 30 | |||
Fri Oct 31 | Withdraw Deadline Fri Oct 31 |
||
Week 11Mon Nov 3 | 18. Linked Lists | 8. Dynamic Memory, Deep Copies | |
Tue Nov 4 | |||
Wed Nov 5 | 19. Iterators | ||
Thu Nov 6 | |||
Fri Nov 7 | |||
Week 12Mon Nov 10 | 20. Functors and Impostor Syndrome |
9. Linked Lists, Functors
Quiz 5. Lectures 14-17, labs 7-8, project 4.
|
|
Tue Nov 11 |
Project 4 Due Tue Nov 11 at 8pm |
||
Wed Nov 12 | 21. Recursion and Tail Recursion | ||
Thu Nov 13 | |||
Fri Nov 14 | |||
Week 13Mon Nov 17 | 22. Structural Recursion | 10. Recursion, Trees | |
Tue Nov 18 | |||
Wed Nov 19 | 23. Binary Search trees, Sets, and Maps | ||
Thu Nov 20 | |||
Fri Nov 21 | |||
Week 14Mon Nov 24 | 24. Error Handling and Exceptions | No Lab | |
Tue Nov 25 |
Project 5 Due Tue Nov 25 at 8pm |
||
Wed Nov 26 | No Class - Thanksgiving Break | ||
Thu Nov 27 | |||
Fri Nov 28 | |||
Week 15Mon Dec 1 | No Class |
11. Exceptions and Review
Quiz 6. Lectures 18-23, labs 9-10, project 5.
|
|
Tue Dec 2 | |||
Wed Dec 3 | No Class | ||
Thu Dec 4 | |||
Fri Dec 5 | |||
Week 16Mon Dec 8 | No Class | No Lab |
Project 6 Due Mon Dec 8 at 8pm |
Tue Dec 9 |
Exit Survey Due Tue Dec 9 at 8pm
Take the Survey
|
||
Wed Dec 10 | |||
Thu Dec 11 | |||
Fri Dec 12 |
Final Exam Fri Dec 12, 10:30am-12:30pm Alternate Final Exam Fri Dec 12, 1:30pm-3:30pm |
tdoom@umich.edu
#!jjuett@umich.edu
akamil@umich.edu