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 8 | No Lab | ||
| Tue Jan 9 | |||
| Wed Jan 10 | Introduction and Machine Model | ||
| Thu Jan 11 | Setup Walkthrough Sessions Windows Mac |
||
| Fri Jan 12 | |||
| Week 2Mon Jan 15 | No Class - MLK Day | 1. Getting Started, IDE Setup | |
| Tue Jan 16 | |||
| Wed Jan 17 | Procedural Abstraction, Testing and Debugging | ||
| Thu Jan 18 | |||
| Fri Jan 19 | Lab Due each Sunday 8pm | ||
| Week 3Mon Jan 22 | Pointers | 2. Machine Model, Testing, Unit Testing Framework | |
| Tue Jan 23 | |||
| Wed Jan 24 | Arrays |
Project 1 Due Wed Jan 24 at 8pm |
|
| Thu Jan 25 | |||
| Fri Jan 26 | |||
| Week 4Mon Jan 29 | Const, Compound Objects | 3. Pointers and Arrays, Detecting Undefined Behavior | |
| Tue Jan 30 | Add/Drop Deadline Tue Jan 30 |
||
| Wed Jan 31 | Abstract Data Types in C | ||
| Thu Feb 1 |
Entry Survey Due Thur Feb 1 at 8pm |
||
| Fri Feb 2 | |||
| Week 5Mon Feb 5 | Strings, Streams, and IO | 4. Strings and IO, Version Control with git | |
| Tue Feb 6 | |||
| Wed Feb 7 | Abstract Data Types in C++ | ||
| Thu Feb 8 | |||
| Fri Feb 9 |
Project 2 Due Fri Feb 9 at 8pm |
||
| Week 6Mon Feb 12 | Derived Classes and Inheritance | 5. Abstract Data Types, Mini-Project | |
| Tue Feb 13 | |||
| Wed Feb 14 | Polymorphism | Valentine's Day | |
| Thu Feb 15 | |||
| Fri Feb 16 | |||
| Week 7Mon Feb 19 | Container ADTs I | 6. Inheritance, Polymorphism, Debuggers | |
| Tue Feb 20 | |||
| Wed Feb 21 | Container ADTs II | ||
| Thu Feb 22 | |||
| Fri Feb 23 |
Project 3 Checkpoint Due Fri Feb 23 at 8pm |
||
| Week 8Mon Feb 26 | Spring Break | ||
| Tue Feb 27 | |||
| Wed Feb 28 | |||
| Thu Feb 29 | |||
| Fri Mar 1 | |||
| Week 9Mon Mar 4 | Memory Models and Dynamic Memory | 7. Containers, Array-Based Data Structures | |
| Tue Mar 5 | |||
| Wed Mar 6 | Managing Dynamic Memory | ||
| Thu Mar 7 | |||
| Fri Mar 8 |
Project 3 Due Fri Mar 8 at 8pm |
||
| Week 10Mon Mar 11 | Deep Copies and The Big Three | No Lab | |
| Tue Mar 12 | |||
| Wed Mar 13 | No Class - Midterm Exam | Midterm Exam Wed Mar 13 at 7-9pm |
|
| Thu Mar 14 | Alternate Midterm Exam Thu Mar 14 at 7-9pm |
||
| Fri Mar 15 | |||
| Week 11Mon Mar 18 | Linked Lists | 8. Dynamic Memory, Deep Copies | |
| Tue Mar 19 | |||
| Wed Mar 20 | Iterators | ||
| Thu Mar 21 | |||
| Fri Mar 22 | |||
| Week 12Mon Mar 25 | Functors and Impostor Syndrome | 9. Iterators and Functors | |
| Tue Mar 26 | |||
| Wed Mar 27 | Recursion and Tail Recursion | ||
| Thu Mar 28 | |||
| Fri Mar 29 | |||
| Week 13Mon Apr 1 | Structural Recursion | 10. Recursion | |
| Tue Apr 2 | Project 4 Due Tue Apr 2 at 8pm |
||
| Wed Apr 3 | Binary Search Trees and Maps | ||
| Thu Apr 4 | |||
| Fri Apr 5 | |||
| Week 14Mon Apr 8 | No Class | 11. Maps, Final Exam Review | |
| Tue Apr 9 | |||
| Wed Apr 10 | No Class | ||
| Thu Apr 11 | |||
| Fri Apr 12 | Project 5 Checkpoint Due Fri Apr 12 at 8pm |
||
| Week 15Mon Apr 15 | Error Handling and Exceptions | No Lab | |
| Tue Apr 16 | |||
| Wed Apr 17 | Pathways in Computing Panel Discussion | ||
| Thu Apr 18 | |||
| Fri Apr 19 | |||
| Week 16Mon Apr 22 | No Class | No Lab | Project 5 Due Mon Apr 22 at 8pm
FAQ
Overview
|
| Tue Apr 23 | |||
| Wed Apr 24 | Exit Survey Due Wed Apr 24 at 8pm |
||
| Thu Apr 25 |
Final Exam Thu Apr 25 10:30am-12:30pm Alternate Final Exam Thu Apr 25 1:30pm-3:30pm |
||
| Fri Apr 26 | |||
bogaerts@umich.edu
jjuett@umich.edu
razak@umich.edu