
Instructor: Chris Fischer
E-mail: cfischer@cis.udel.edu
Office hours: Before Class and by Appointment
Web: http://www.cis.udel.edu/~cfischer/
Teaching Assistant: Sherol Chen
E-mail: schen@cis.udel.edu
Office:
Office hours:
You can also expect that I will provide you a LOT of resources to succeed in this course. I will provide as many outside references and sample code as I can. I will also make myself available for questions as much as possible. If possible, reach me by email, during the week. I will usually get back to you very quickly. However, I do have two rules.
Other important points:
You are strongly encouraged to come to class. While I will put
some material up on the web, it will be hard to do well in this course
without coming to class. Reading the relevant chapters ahead of time is
also a good idea. Last semesters class convinced me to post the Powerpoints
ahead of time. I'll do that again, but only if people show up regularly
for class.
Special Rule: Your final grade cannot be more than one letter grade higher than your exam average. This ensures that your final grade reflects your mastery of the basic concepts of the course.
Lab/Project submission: All Labs must be submitted to the TA,
either in person on in their mailbox. All Projects must be personally handed
to the TA - if you place it in their mailbox, you will receive a zero on
it.
Homework Submission: Homeworks should be submitted to me. If the homework involves a programming assignment, it has to be done on a computer, with appropriate test runs.
All papers MUST be stapled. Unstapled papers will lose 10 points.
Coding conventions: I will go over coding conventions in the second or third lecture. Your code should generally follow it, or you will lose points. Code that can't be followed clearly by other people is far less useful (more on this later.)
Lateness: Assignments are due by the end of class on the date they are due. After that, they lose 5%/day, up to a maximum of 7 days late. Labs can be turned into my or the TA's mailbox, with the DATE and TIME of submission clearly marked on it. Any paper that doesn't have the date and time clearly marked on it on the first page (Either circled, if the printout shows a timestamp, or otherwise written) will lose 10 points.
Academic Dishonesty: DO YOUR OWN WORK. You as specifically NOT permitted to discuss solutions to problems with other students or share code.
I haven't been out of school long enough to forget how rampant cheating is. So before you think about sharing solutions, know this much going in.
Grading Policies: I'm going to grade on the standard curve (>93=A,
>90=A-, >87 B+, etc.). This is guaranteed. Depending on class performance
or other factors, I might adjust this scale down (to help everyone) I will
never adjust it up.
Also, all your grades will be posted online (via a code name) so that
you always know exactly where you are throughout the semester. Please check
online and make sure all your grades are correct.
Your grade for the semester will be based on:
| Tests: | 50% of final grade | |
| Projects: | 25% of final grade | |
| Labs + Homeworks | 25% of final grade |
Class participation can positively affect a borderline grade.

| Date | Topics | Resources | Readings | What's Due |
| February 7 | Introduction To Course | Lecture 1 | ||
| February 9 | C++ Basics | Lecture 2 | Savitch Chapter 1 | |
| February 14 | Coding Standards | |||
| February 16 | File Processing | Lecture 3 | Savitch Chapter 2, Using Unix 1 | Lab 1 |
| February 21 | File Processing, Start functions | Lecture 4 Code | Savitch Chapter 3, Using Unix 2 | |
| February 23 | Return Codes, More Functions, Random Numbers | Lecture 5 scope.cc random.cc | Lab 2 | |
| February 28 | Recursion, Functions | Lecture 6 | Savitch Chapter 4 | |
| March 2 | Pass by Reference, Function Overloading | Lab 3 | ||
| March 7 | Return Codes, Start Arrays | Lecture 7 | ||
| March 9 | Review for Exam | Project 1 | ||
| March 14 | Exam 1 | |||
| March 16 | More Arrays, Structs | Lecture 8 | ||
| March 21 | Pointers | Lecture 9 | Code More Code | |
| March 23 | More Pointers | Lecture 10 | Lab 4 AND Lab 5 | |
| March 28 | Spring Break! | |||
| March 30 | Spring Break! | |||
| April 4 | Begin Linked Lists | PtrSize LinkedList | ||
| April 6 | More Linked Lists | Code From Class | ||
| April 11 | Dynamic Memory allocation | |||
| April 13 | Work on Projects | Code from Class | Lab 6 | |
| April 18 | Linked list help/Begin Classes | Lecture 12 | Savitch Chapter 6 | |
| April 20 | More Classes/Review for Exam 2 | Project 2 | ||
| April 25 | Exam 2 | |||
| April 27 | Constructors | Lecture 13 | Savitch Chapter 7 | |
| May 2 | this pointer, friend functions, operator overloading | Lecture 14 | ||
| May 4 | Inheritence | Lecture 17 | Lab 7 | |
| May 9 | Virtual Functions | Lecture 18 | Code from class | |
| May 11 | More Inheritence and Virtual Functions | Lecture 19 | Code from Class | |
| May 16 | Review for Final | Project 3 | ||
| Final Exam, May 24, SHL 130 | Final Exam |