EECS 381 - Object-Oriented and Advanced Programming - Winter 2014
Lecture: TTh 3:00 - 5:00, 1014 DOW
(There is no scheduled "Discussion" section, only a "Lecture" section).
- David Kieras
- 3641 Beyster Building
eecs381help at the usual umich and edu address
kieras at the usual umich and edu address
Time, Place, and Logistics
- The Final Exam will be held Thursday, April 24, starting at 4:00 PM, ending at 6:00 PM.
- We have two rooms. If your last name starts with A-K, go to DOW 1014 (the regular classroom); if L-Z go to DOW 1010 (near the regular classroom).
- Please leave at least one seat between you and each other person.
- Please move into the middle of the rows so that those arriving later can find seats easily.
- Please place all backpacks, books, etc on the floor before the exam starts.
- Use of computational or data-access devices of any sort will be neither necessary nor allowed during the exam.
All required paper will be provided.
- The exam will be closed-book, closed-notes. The only equipment you need to bring is a pen or pencil and your hopefully rested and well-loaded brain.
- The exam will be short enough that time pressure will probably not be an issue for most people.
Coverage and Question Style
- Coverage will be everything in the course, but by far the final will emphasize the material since the midterm,
starting with inheritance.
- The final exam will be very similar in style to the midterm, so reviewing your midterm and studying the sample questions will give you
the best idea about what the exam will be like in terms of style.
- While some questions may be about low-level coding issues, by far the emphasis will be on concepts and
understanding the "why" and "how does it work."
How to Prepare
- Since my posted lecture notes and assigned handouts cover what I think is most important, using them as a study guide would be a good idea.
- Another guideline for study is to make sure you understand the "why" of what you were supposed to do in the projects.
Reviewing the conceptual discussion in the Project docs would be useful.
- If you haven't already, studying your midterm and understanding why answers are correct and incorrect would be a good preparation as well.
- Good programmers know how to talk about this stuff! So if you have a friend in the course,
a good way to prepare for the exam would be to practice explaining the concepts to each other.
For example, what order of constructor calls happen when you create an object of a leaf class in an inheritance tree? What's the principle?
Another example: when and why do you have to define a destructor function for a class in a hierarchy?
Sample Exam Questions These illustrate the style of questions likely to be on
the exams. These questions are drawn from previous midterms and finals. This is not intended as a study guide because the questions
do not correspond with any particular exam's coverage. Do not ask for answers to these questions or additional sample questions;
this is not a study guide; it is just an illustration of the kinds of questions likely to be on an exam.
Course Resource Materials
Project Grading and Evaluation
General Project Help
Individual Project Information
Links to Project documents and materials are listed here when ready.
Programming Environments for this Course - using C and C++11
General Programming Environment Information and FAQs
Useful Links to C/C++ Information and Resources
Examples of other Coding Standards (Not usable for this course)
- The Code Project A Windows-centric site on technical and professional software development topics. Informative and fun daily news feed.
- Being a Programmer A Code Project article with good advice for the new professional programmer.
Interesting and Fun Links