Pre requisite: CSE-1201, Structured Programming

carenextSoftware and s/w Development

Nov 18, 2013 (3 years and 6 months ago)

119 views

International Islamic University Chittagong

Department of Computer Science and Engineering

B. Sc. in Computer Science and Engineering

Course Outline

Course Code


:
CSE
-
2301

Course Ti
tle


:
Object Oriented
Programming


Course Teacher



:
Farhana Haider


Pre requisite: CSE
-
1201
, Structured Programming



Objective:
Object Oriented Programming is an approach to program using Objects and Classes. This course equip
the

students with in
-
dept
h knowledge of different features and techniques of Object Oriented Paradigm and hence
able

them to program in Object Oriented Approach using language like C++.


Section
-
A (Mid
-
term: 30 Marks)

Lecture 1
to
5

Introduction:
Defionition of OOP, C++ Console I
/O, Introduction to Classes and Objects, Basic
concept of Object

Oriented Programming, Difference between Structured Programming and Object
Oriented Programming, Difference

between C/C++, Benefits of OOP, Characteristics of Procedure
Oriented Programming,
Characteristics of Object

Oriented Programming and Application of Object
Oriented Programming.

Lecture
6

to

12

Introducing Classes, Arrays, Pointers and References
: Access Specifiers, Constructor and
Destructor, Constructors with parameters, Object Pointe
rs, Relation between Classes, Structures
and unions, In
-
line functions, Automatic in
-
line functions, Assigning objects, Passing objects to
functions, Returning objects from function, Friend functions, Static member functions. Array of
objects, Pointer to o
bjects, the pointer, using
new
and
delete
, passing references, returning
references

Lecture
13
to 1
7

Function Overloading:
Overloading function, Constructor Overloading, Copy constructor, Default
arguments, Overloading ambiguity, Address of overloaded fun
ction.

Lecture 18

[Class Test]

Syllabus completed till date

Section
-
B (Final Exam: 50 Marks)

Group
-
A (20 Marks)

Lecture
1
9

to

23

Operator Overloading:
Binary operator overloading, Unary operator overloading, Relational and
logical operator overloading,

Operator overloading using friend functions, Limitations of operator
overloading.

Lecture
24

to
27


Inheritance
: Defining derived classes, Single inheritance, multiple inheritance, multilevel
inheritance, Hierarchical inheritance, Virtual base classes, C
onstructors in derived classes,
Nesting of classes.

Group
-
B (30 Marks)

Lecture
28 to 31

C++ I/O System
: Streams, Stream classes, Unformatted I/O, Binary I/O, formatted I/O, I/O
manipulators, Inserters, Extractors, File I/O streams, Opening and closing fi
les, Random access
files, I/O status checking, Customized I/O and files.

Lecture
32

to
35

Virtual Functions
: Pointers to derived classes, Applying Polymorphism using virtual functions,
Polymorphic class, Pure Virtual functions, Abstract classes, early bin
ding, and late binding.

Lecture 36

to

40

Template Exception Handling and Standard Template Library
:

Generic functions, Generic
classes, Exception handling, Throwing mechanism, Catching mechanism, Rethrowing mechanism,
Specifying exceptions Templates, Comp
onents of STL, Container, Algorithms.

Lecture


[Class Test 3]

Syllabus completed till date

Lecture 42

Review Class


Recommended Books:

1. Robert Lafore



: “Object Oriented Programming in C++”

2. Herbert Schildt


: “Teach yourself C++”

3. E Balagurusamy


: “Object
-
Oriented Programming with C++”

4. Irvine




: “C++ Object Oriented Programming”

5. Bruce Eckel



: “Thinking in C++”

6. Bjarne Stroustrup


: “The C++ Programming Language”






-
Farhana Haider


Assistant Professor, Dept. of Computer Science an
d Engineering


International Islamic University Chittagong




Number of Lectures

42

Credit Hour


3

per week

Contact Hour


3

per week