National Institute of Technology Meghalaya CURRICULUM
An Institute of National Importance
Programme Bachelor of Technology in Computer Science and Engineering Academic Year of Regulation 2018-19
Department Computer Science and Engineering Semester IV
Course Credit Structure Marks Distribution
Course Name
Code L T P C INT MID END Total
CS 272 Object Oriented Programming 2 0 0 2 50 50 100 200
To provide students in-depth theoretical base and fundamentals of Object Able to demonstrate the procedural and object oriented
Oriented Programming paradigm CO1 paradigm with concepts of data, functions, classes and objects
To prepare students to design and code various projects using Object Able to illustrate dynamic memory management techniques
Oriented Programming paradigm CO2 using pointers, constructors, destructors etc.
Able to make use of the concept of function overloading,
CO3 operator overloading, type conversion and polymorphism
Course Course
Objectives Outcomes Able to interpret the concept of Inheritance and its various
CO4 types along with the understanding of late binding
Able to compare the procedures of file handling and exception
CO5 handling in C++
Able to test the concept of templates and the use of Standard
CO6 Template Libraries of C++
Mapping with Program Outcomes (POs) Mapping with PSOs
No. COs
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
1 CO1 3 0 1 0 1 0 0 0 0 1 1 1 0 0 0
2 CO2 2 3 3 2 1 1 0 0 1 0 0 0 1 1 1
3 CO3 3 3 3 2 1 0 0 0 1 0 0 0 0 1 1
4 CO4 3 1 1 2 0 0 0 0 0 0 0 0 0 2 3
5 CO5 3 0 3 1 3 0 0 0 1 0 0 0 0 1 1
6 CO6 3 2 2 2 0 0 0 0 2 0 0 0 0 0 1
SYLLABUS
No. Content Hours COs
Introduction:
I Introduction to object oriented programming, user defined types, structures, unions, polymorphism, 01 CO1
encapsulation;
Beginning with C++:
II Getting started with C++ syntax, data types, variables, data types, type conversion – implicit and explicit, inline 03 CO2
functions, string class, specifying classes and objects;
Classes and Objects:
III Data hiding, member function, memory allocation, static members, static objects, array of objects, friendly 04 CO2
function, pointers to members, constructors and destructors;
Concept of Overloading:
IV Function overloading, operator overloading of unary, binary, special operators; Type conversion; Compile Time 03 CO3
Polymorphism
Inheritance:
Introduction to inheritance, different types; Single inheritance – public and private derivation, protected member,
V constructor and destructor in derived class; Multilevel and multiple inheritance; Ambiguity resolution; 09 CO4
Hierarchical and hybrid inheritance; Virtual base class; Object slicing; Pointer to base and derived class; Virtual
functions;
File Handling:
VI Streams, classes for file stream, opening a file, detecting the EOF, file modes, file pointers and their functions, 02 CO5
types of files, i/p and o/p functions for sequential and random access, error handling.
Templates:
VII 02 CO6
Function templates, class templates, advantages and disadvantages, Standard Template Library.
Total Hours 24
Essential Readings
1. Robert Lafore, “Object-Oriented Programming in C++”, 4th Edition, Sams Publishing, 2001.
2. E Balagurusamy, “Object-Oriented Programming in C++”, 8th Edition, McGraw-Hill Education India, 2020.
3. Yashvant Kanetkar, “Let Us C++ “, BPB Publication, 2020.
Supplementary Readings
1. P.J. Deitel and H.M Deitel ,”C++ How to Program”, 10th Edition, Pearson Publication, 2016.
2. Herbert Schildt, “C++: The Complete Reference”, 4th Edition, McGraw-Hill Education India, 2017.
3. Bjarne Stroustrup, “The C++ Programming Language”, 3rd Edition, Pearson Education India, 2002.