Lectures
Computer science fundamentals, with programming in C++. Build an image processing program, a game of Euchre, a text editor, and a machine learning algorithm. Syllabus
If there's something not on these forms, you can reach us at eecs280admin@umich.edu.
Day | Lecture Topic | Lab Topic | Deadline/Event |
Week 1Mon May 6 | |||
Tue May 7 | Introduction and Machine Model | No Lab | |
Wed May 8 | Procedural Abstraction, Testing and Debugging | Setup Walkthrough Sessions Windows Mac |
|
Thu May 9 | Pointers | 1. Getting Started, IDE Setup | |
Fri May 10 | |||
Week 2Mon May 13 | Arrays | ||
Tue May 14 | const, Structs, and C-Style ADTs | 2. Machine Model, Testing, Unit Testing Framework |
Project 1 Due Tue May 14 at 8pm |
Wed May 15 | Streams and I/O | ||
Thu May 16 | C-Style Strings | 3. Pointers and Arrays, Detecting Undefined Behavior | |
Fri May 17 | |||
Week 3Mon May 20 | Abstract Data Types in C++ | Add/Drop Deadline Mon May 20 |
|
Tue May 21 | Derived Classes and Inheritance | 4. Strings and IO, Version Control with git |
Entry Survey Due Tue May 21 at 8pm |
Wed May 22 | Polymorphism |
Project 2 Due Wed May 22 at 8pm |
|
Thu May 23 | Container ADTs I | 5. Abstract Data Types, Mini-Project | |
Fri May 24 | |||
Week 4Mon May 27 | No Class - Memorial Day | ||
Tue May 28 | Container ADTs II | 6. Inheritance, Polymorphism, Debuggers | |
Wed May 29 | Memory Models and Dynamic Memory | ||
Thu May 30 | Managing Dynamic Memory | 7. Containers, Array-Based Data Structures | |
Fri May 31 | |||
Week 5Mon Jun 3 | Deep Copies and The Big Three |
Project 3 Due Mon Jun 3 at 8pm |
|
Tue Jun 4 | Midterm Exam Review | No Lab | |
Wed Jun 5 | No Lecture - Midterm Exam | Midterm Exam Wed Jun 5 at 12-2pm |
|
Thu Jun 6 | Linked Lists | 8. Dynamic Memory, Deep Copies | |
Fri Jun 7 | |||
Week 6Mon Jun 10 | Iterators | ||
Tue Jun 11 | Functors and Impostor Syndrome | 9. Iterators and Functors | |
Wed Jun 12 | Recursion and Tail Recursion | ||
Thu Jun 13 | Structural Recursion | 10. Recursion | |
Fri Jun 14 | Project 4 Due Fri Jun 14 at 8pm | ||
Week 7Mon Jun 17 | Binary Search Trees and Maps | ||
Tue Jun 18 | Exceptions | 11. Maps, Final Exam Review | |
Wed Jun 19 | No Class - Juneteenth | ||
Thu Jun 20 | Final Exam Review | No Lab | |
Fri Jun 21 | |||
Week 8Mon Jun 24 | No Class | Project 5 Due Mon Jun 24 at 8pm |
|
Tue Jun 25 | Exit Survey Due Tue Jun 25 at 8pm |
||
Wed Jun 26 | |||
Thu Jun 27 |
Final Exam Thu Jun 27 8am-10am |
||
Fri Jun 28 |
jjuett@umich.edu
razak@umich.edu