| Instructor: | Ashok Subramanian |
| Office: | 234 CCB |
| Phone: | (314) 516-6279 |
| e-mail: | subramaniana@umsl.edu |
| URL: | http://www.umsl.edu/~subraman |
| Office Hours: | TR 4:00 p.m. - 5:30 p.m. or by appointment |
| Class Hours: | TR 5:30 p.m. - 6:45 p.m., 005 CCB |
This course is an introductory course in object oriented programming. The fundamental concepts of object oriented programming will be studied using the C++ programming language. The purpose of this course is to explore and understand fundamental concepts such as Encapsulation, Polymorphism, and Inheritance. It is not meant to be a comprehensive course on the features of the C++ programming language.
The prerequisite for this course is IS 6800 - Management Information Systems. It is assumed that students will be familiar with basic programming concepts and programming logic. No prior knowledge of the C programming language is required. Grades will be assigned based on performance on examinations and programming assignments.
Deitel, H.M., and Deitel, P.J., "C++ How to Program," Fourth Edition,
P
rentice Hall, 2003.
There are many other resources available on-line such the following
electronic textbook
"Thinking in C++ (Vol. 1)" by Bruce Eckel, which is available
as a free download.
In addition, tutors are available for this course. Their hours are:
Monday 7:00 PM - 11:00 PM, 103 SSB Tuesday 10:30 AM - 5:00 PM, 103 SSB 7:00 PM - 10:00 PM, 103 SSB Thursday 10:30 AM - 5:00 PM, 103 SSB 7:00 PM - 10:00 PM, 103 SSB Saturday 9:30 AM - 12:00 PM, 200 CCB 12:00 pM - 5:00 PM, 103 SSB
A letter grade will be assigned based on performance in two exams and four programming assignments. The exams and assignments will be weighted as follows:
| Assignment 1 | 12.5% |
| Assignment 2 | 12.5% |
| Assignment 3 | 12.5% |
| Assignment 4 | 12.5% |
| Exam 1 | 25% |
| Exam 2 | 25% |
The due date for each assignment will be indicated on the assignment.
| WEEK | TOPIC | READINGS |
|---|---|---|
| 1 | Orientation, Programming concepts | notes |
| 2 | UNIX: Concepts, files | notes |
| 3 | UNIX: Shells, Editors (vi) | notes |
| 4 | OOP Concepts | notes |
| 5 | Overview of C++ | ch. 1 |
| 6 | Control Structures: Selection, and Iteration | ch. 2 |
| 7 | Functions | ch. 3 |
| 3/01, 3/03 | Review, Exam 1 | |
| 9 | Arrays | ch. 4 |
| 10 | Strings and Pointers | ch. 5 |
| 11 | Structures, Classes and Data Abstraction | ch. 6 |
| 12 | Classes: Part II | ch. 7 |
| 13 | Stream I/O,File Processing | ch. 11, ch. 14 |
| 14 | Inheritance | ch. 9 |
| 15 | Virtual Functions & Polymorphism | ch. 10 |
| 5/10 | Exam 2 (5:30 p.m. - 7:30 p.m.) |