CIS9410: Object-Oriented Programming II

Instructor: Prof. Pai-chun Ma
Room: VC 11th Floor
e-mail: pma@baruch.cuny.edu
Office Hours: 05:00PM-06:00PM MON & WED or By Appointment

Required Text:

Dietel & Dietel, C++ - How To Program, 3rd Edition, Prentice Hall, Upper Saddle River, New Jersey, 2000 (DD)

Dietel, Dietel, Nieto & Strassberger, Getting Started with Microsoft Visual C++ 6 with an Introduction to MFC, ( A Companion to C++ - How To Program ) Prentice Hall, Upper Saddle River, New Jersey, 2000 (DDNS)

 Pre-requisite: CIS9310

Section

Day

Time

Room

Building

MW6

MON, WED

06:00PM-07:15PM

13-145

VC


Overview:

CIS9410 covers the second part of the object-oriented programming course. Students are expected to know basic programming concepts, including literal and variable, data type, boolean logic, control structure (if, else, while, for, switch..case), function and its returned types (void, value, reference) and parameters passing (call-by-value, call-by-reference), structure, class (overloaded constructor, copy constructor, default constructor, overloading operators), object, array, pointer and multi-file project, before registering for this course.

The course will emphasize on advanced concepts of the object-oriented programming, which include inheritance, virtual functions, container class, template, stream and file, exception handling, standard template library, and fundamental of GUI programming.


Assignment & Lab Environment:

Programming assignments are required in this class. They have to be submitted on or before the due date. Make sure that the program works before you submit it. Submission must include a printout of your C++ source code, and a printed hard copy of the output from the program. Keep in mind that the assignments are designed to help you to understand the concepts, and it is important to work on your own assignments by yourself. For every assignment program, the first several lines should contain the following information:

(1) your name; (2) course number and section; (3) Programming Assignment #number; (4) date created; (5) date of last update; (6) brief description of what the program does.


Outline:

Wk

Topics

Notes

1/30-2/11

Review of CIS9310. Chap 5-8.

Array, Pointer, C-string, Class, Default Constructor, Copy Constructor, Search and Sort, Multi-file Project

Exercises 5.21, 5.23, 6.10, 7.9, 8.8

2/13-2/20

Inheritance (chap 9)

Exercises 9.9, 9.10, 9.14

2/25-3/04

Virtual Function and Polymorphism (chap 10)

Exercises 10.6, 10.14, 10.15

3/06-3/20

Data Structure (chap 15)

Exercises 15.7

Midterm take home exercises will be available on 3/18.

4/01

Review for Midterm Exam

 date.h  date.cpp

4/03

Midterm Exam (40%)

 Grade Book

4/10-4/15

Template & Standard Template Library (chap 12 & 20)

 Exercises 12.6, 12.7, 12.22

 

4/17-4/24

String and String Stream Processing (chap 19)

 

4/29-5/01

Exception Handling (chap 13)

 

5/06-5/13

MFC Programming Part I & II (DDNS chap 2-5)

 

5/15

Review for Final Exam

 

TBD

Final Exam (50%)

 Grade Book


 Grading:

 MIDTERM EXAM

40%

FINAL EXAM

50%

Assignments and Projects

10%


Last update: January 8, 2002