LP Rev. No: 00
Date: 29-06-09
Page 01 of 06
Sub Code & Name : CS2203/OBJECT ORIENTED PROGRAMMING
Unit: I Branch: CSE Semester: III
Unit syllabus:
INTRODUCTION
Object oriented programming concepts – objects – classes – methods and messages – abstraction and encapsulation – inheritance – abstract classes – polymorphism.
Introduction to C++ – classes – access specifiers – function and data members – default arguments – function overloading – friend functions – const and volatile functions - static members – Objects – pointers and objects – constant objects – nested classes – local classes.
Objective: This unit gives an introduction to Object oriented concepts such as objects, classes, messages, encapsulation, data abstraction, polymorphism. It gives detailed description about access specifiers, functions.
SessionNo / Topics to be covered / Time / Ref / Teaching Method
1 / Object oriented programming concepts -
Objects, Classes, Methods and Messages, Encapsulation and Data Abstraction inheritance, polymorphism, abstract classes / 50m / 1(p 4-15)
2( p 5,16-18) / BB
2 / Classes – access specifiers / 50m / 1(p -50,53-58)
2(p 142) / BB
3 / Function and Data Members ,Default arguments, / 50m / 1(p 95-98,101-104)
2(p 68) / BB
4 / Function overloading / 50m / 1(p-119-122) / BB
5 / Friend functions / 50m / 1(p 127-134)
2(p 217) / BB
6 / Static members / 50m / 1p(66-75,127-134)
2(p 150) / BB
7 / Const and volatile functions, static functions / 50m / 1(p135-139) / BB
8 / Objects – pointers and objects / 50m / 1( p79-81) / BB
9 / Nested classes – Local classes. / 50m / 1(p 82-87) / BB
/ LESSON PLAN / LP- CS 2203
LP Rev. No: 00
Date: 29-06-09
Page 02 of 06
Sub Code & Name : CS2203/OBJECT ORIENTED PROGRAMMING
Unit: II Branch: CSE Semester: III
Unit syllabus:
Constructors – default constructor – Parameterized constructors – Constructor with dynamic allocation – copy constructor – destructors – operator overloading – overloading through friend functions – overloading the assignment operator – type conversion – explicit constructor
Objective:
This unit gives a detailed description about Constructors and operator overloading concepts and enables the students to implement the same in programming.
SessionNo / Topics to be covered / Time / Ref / Teaching Method
10 / Constructors – Default constructor –
Parameterized constructors / 50m / 1(p170-178,183-184)
2(p 168-169) / BB
11 / Copy constructor – Destructors / 50m / 1(p 199-216)
2(174,199) / BB
12 / Constructor with dynamic allocation / 50m / 1(p193-198) / BB
13 / Operator overloading -
Operator overloading through member functions. / 50m / 1 (p 231-240) / BB
14 / Operator overloading -
Unary operator overloading
Binary operator overloading / 50m / 1 (p 241-245)
2(p 221-223) / BB
15 / Overloading through friend functions / 50m / 1(p 246-248) / BB
16 / Overloading the assignment operator / 50m / 1 (p 251-255)
2(p 225) / BB
17 / Type conversion / 50m / 1(p 269-279) / BB
18 / Explicit constructor / 50m / 1(p 181-183) / BB
/ LESSON PLAN / LP- CS2203
LP Rev. No: 00
Date: 29-06-09
Page 03 of 06
Sub Code & Name : CS2203/OBJECT ORIENTED PROGRAMMING
Unit: III Branch: CSE Semester: III
Unit syllabus:
FILE HANDLING
Function and class templates - Exception handling – try-catch-throw paradigm – exception specification – terminate and Unexpected functions – Uncaught exception.
Objective:
This unit gives detailed description about functions, templates, Exception handling.
SessionNo / Topics to be covered / Time / Ref / Teaching Method
19 / Function Templates, Function Templates with single arguments / 50m / 1(p 285-295)
2(p 280-282) / BB
20 / Function Templates with multiple arguments, Function Templates with 2 generic arguments, non – generic parameters / 50m / 1(p 296 –302) / BB
21 / Template function specialization, Explicitly specializing a template function. / 50m / 1(p 303-313) / BB
22 / Class template, Defining functions outside Class template / 50m / 1(p 315-327)
2(p 283-284) / BB
23 /
Classes with multiple generic data types
Friends of class templates.
/ 50m / 1(p 328-334) / BB24 / Exception handling– try-catch-throw paradigm / 50m / 1(p 343-347,353-358)
2(p 368) / BB
25 / Exception specification / 50m / 1(p 358-365) / BB
26 / Terminate and Unexpected functions / 50m / 1(p 369-372) / BB
27 / Uncaught exception. / 50m / 1(p 373-376) / BB
/ LESSON PLAN / LP- CS2203
LP Rev. No: 00
Date: 29-06-09
Page 04 of 06
Sub Code & Name : CS2203/OBJECT ORIENTED PROGRAMMING
Unit: IV Branch: CSE Semester: III
Unit syllabus:
Inheritance – public, private, and protected derivations – multiple inheritance - virtual base class – abstract class – composite objects Runtime polymorphism – virtual functions – pure virtual functions – RTTI – typeid – dynamic casting – RTTI and templates – cross casting – down casting .
Objective:
This unit gives a detailed explanation about inheritance, virtual base class, virtual functions, Runtime polymorphism, RTTI and enables the students to implement the same in programming.
SessionNo / Topics to be covered / Time / Ref / Teaching Method
28 / Inheritance – public, private, and protected derivations / 50m / 1(p 383-393) / BB
29 / Multiple inheritance -abstract class / 50m / 1(p 400 -405, 411)
2(p 342-344) / BB
30 / Virtual base class / 50m / 1(p 407-411) / BB
31 / Composite objects / 50m / 1(p 415- 421) / BB
32 / Runtime polymorphism
virtual functions – pure virtual functions / 50m / 1(p 428,437-442,
450-455)
2(p 330-333) / BB
33 / RTTI, typeid / 50m / 1(p 459- 471) / BB
34 / Dynamic casting / 50m / 1(p 472-481) / BB
35 / RTTI and templates / 50m / 1(p 484- 489) / BB
36 / Cross casting – down casting / 50m / 1(p 490- 492) / BB
/ LESSON PLAN / LP- CS2203
LP Rev. No: 00
Date: 29-06-09
Page 05 of 06
Sub Code & Name : CS2203/OBJECT ORIENTED PROGRAMMING
Unit: V Branch: CSE Semester: III
Unit syllabus:
Streams and formatted I/O – I/O manipulators - file handling – random access – object serialization – namespaces - std namespace – ANSI String Objects – standard template library.
Objective:
This unit provides in-depth knowledge about streams and file operations. It covers I/O operations, file and error handling mechanisms.
SessionNo / Topics to be covered / Time / Ref / Teaching Method
37 / Streams, formatted I/O / 50m / 1(p 496,500- 504) / BB
38 / I/O manipulators / 50m / 1(p 515- 520) / BB
39 / File handling, opening & closing files Text files / 50m / 1(p 530- 538) / BB
40 / Binary files, End of file / 50m / 1(p 539- 543) / BB
41 / Random access / 50m / 1(p 544- 550) / BB
42 / Object serialization– namespaces- std namespace / 50m / 1(p 551,557-565-572) / BB
43 / ANSI String Objects / 50m / 1(p 577- 586) / BB
44 / Standard template library, Introduction, principles /
50m / 1(p 588-- 591)
2(p 489-493) / BB
45 / Working of STL, Function & predicate objects, Allocators / 50m / 1(p 592-- 631)
2(p 509) / BB
/ LESSON PLAN / LP- CS2203
LP Rev. No: 00
Date: 29-06-09
Page 06 of 06
Sub Code & Name : CS2203/OBJECT ORIENTED PROGRAMMING
Branch: CSE Semester: III
Course Delivery Plan:
Week / 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12I II / I II / I II / I II / I II / I II / I II / I II / I II / I II / I II / I II
Units
/ / 1 / / 2 / / 3 / / 4 / / 5Books Referred:
TEXT BOOKS
1. B. Trivedi, “Programming with ANSI C++”, Oxford University Press, 2007.
REFERENCES:
2. Ira Pohl, “Object Oriented Programming using C++”, Pearson Education, Second Edition
Reprint 2004..
3. S. B. Lippman, Josee Lajoie, Barbara E. Moo, “C++ Primer”, Fourth Edition, Pearson Education,
2005.
4. B. Stroustrup, “The C++ Programming language”, Third edition, Pearson Education, 2004.
Prepared by /Approved by
SignatureName / Ms.S.Jayanthi,Sr .Lecturer
Ms.M.S.Roopakala , Lecturer / Dr. Susan Elias
HOD-CSE
Date / 29-06-09 / 29-06-09