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 |
Week 1Mon Jan 6 | No Lab | ||
Tue Jan 7 | |||
Wed Jan 8 | 1. Course Introduction, Intro to C++ | ||
Thu Jan 9 | |||
Fri Jan 10 | |||
Week 2Mon Jan 13 | 2. Types, Control Structures, and Procedural Abstraction | ||
Tue Jan 14 | Setup Walkthrough Sessions Tue Jan 14 at 7pm |
||
Wed Jan 15 | 3. Machine Model, Part 1 | ||
Thu Jan 16 | 1. Intro to Lab, C++ Fundamentals, Pragmatics | ||
Fri Jan 17 | |||
Week 3Mon Jan 20 | No Class -- MLK Day | ||
Tue Jan 21 | |||
Wed Jan 22 | 4. Machine Model, Part 2 | ||
Thu Jan 23 | 2. Machine Model, Pointers/References, Call Stack, UTF Tutorial | ||
Fri Jan 24 | |||
Week 4Mon Jan 27 | 5. const, Structs, and C-Style ADTs |
Project 1 Due Mon Jan 27 at 8pm |
|
Tue Jan 28 | Add/Drop Deadline Tue Jan 28 |
||
Wed Jan 29 | 6. Streams and I/O |
Entry Survey Due Wed Jan 29 at 8pm |
|
Thu Jan 30 | 3. C-style ADTs, Streams and I/O, Assertions+UB Tutorial | ||
Fri Jan 31 | |||
Week 5Mon Feb 3 | 7. TBD | ||
Tue Feb 4 | |||
Wed Feb 5 | 8. Abstract Data Types in C++ | ||
Thu Feb 6 | 4. Classes, C++ ADTs, Mini-Project | ||
Fri Feb 7 | |||
Week 6Mon Feb 10 | 9. Derived Classes and Inheritance | ||
Tue Feb 11 | |||
Wed Feb 12 | 10. Polymorphism |
Project 2 Due Wed Feb 12 at 8pm |
|
Thu Feb 13 | 5. Inheritance, Polymorphism, Debugging Tutorial | ||
Fri Feb 14 | |||
Week 7Mon Feb 17 | 11. Arrays, Pointer Arithmetic, C-Style Strings | ||
Tue Feb 18 | |||
Wed Feb 19 | 12. Array-Based Data Structures, Time Complexity | ||
Thu Feb 20 | 6. Array-Based Data Structures | ||
Fri Feb 21 | |||
Week 8Mon Feb 24 | 13. Sorted Data Structures |
Project 3 Checkpoint Due Mon Feb 24 at 8pm |
|
Tue Feb 25 | |||
Wed Feb 26 | 14. Containers and Iterators | ||
Thu Feb 27 | No Lab | ||
Fri Feb 28 | |||
Week 9Mon Mar 3 | Spring Break | ||
Tue Mar 4 | |||
Wed Mar 5 | |||
Thu Mar 6 | |||
Fri Mar 7 | |||
Week 10Mon Mar 10 | 15. Memory Models and Dynamic Memory | 7. Containers, Iterators | |
Tue Mar 11 | |||
Wed Mar 12 | 16. Managing Dynamic Memory |
Project 3 Due Wed Mar 12 at 8pm |
|
Thu Mar 13 | |||
Fri Mar 14 | |||
Week 11Mon Mar 17 | No Class - Midterm Exam | No Lab |
Midterm Exam Mon Mar 17, 7-9pm |
Tue Mar 18 |
Alternate Midterm Exam Tue Mar 18, 7-9pm |
||
Wed Mar 19 | 17. Deep Copies and The Big Three | ||
Thu Mar 20 | |||
Fri Mar 21 | Withdraw Deadline Fri Mar 21 |
||
Week 12Mon Mar 24 | 18. Linked Lists | 8. Dynamic Memory, Deep Copies | |
Tue Mar 25 | |||
Wed Mar 26 | 19. Iterators | ||
Thu Mar 27 | |||
Fri Mar 28 |
Project 4 Due Fri Mar 28 at 8pm |
||
Week 13Mon Mar 31 | 20. Functors and Impostor Syndrome | 9. Linked Lists, Functors | |
Tue Apr 1 | |||
Wed Apr 2 | 21. Recursion and Tail Recursion | ||
Thu Apr 3 | |||
Fri Apr 4 | |||
Week 14Mon Apr 7 | 22. Structural Recursion | 10. Recursion, Trees | |
Tue Apr 8 | |||
Wed Apr 9 | 23. Binary Search trees, Sets, and Maps | ||
Thu Apr 10 | |||
Fri Apr 11 |
Project 5 Due Fri Apr 11 at 8pm |
||
Week 15Mon Apr 14 | 24. TBD - Recursion | 11. TBD | |
Tue Apr 15 | |||
Wed Apr 16 | 25. Error Handling and Exceptions | ||
Thu Apr 17 | |||
Fri Apr 18 | |||
Week 16Mon Apr 21 | No Class | No Lab |
Project 6 Due Mon Apr 21 at 8pm |
Tue Apr 22 | |||
Wed Apr 23 | |||
Thu Apr 24 | |||
Fri Apr 25 |
Final Exam Fri Apr 25, 10:30am-12:30pm Alternate Final Exam Fri Apr 25, 1:30pm-3:30pm |
bogaerts@umich.edu
jjuett@umich.edu
razak@umich.edu
sofias@umich.edu