The Object Oriented Programming Syllabus for BIT153 outlines the curriculum for students learning C++. It covers essential concepts such as classes, objects, inheritance, polymorphism, and file handling. This syllabus is designed for students in their second semester, providing a comprehensive framework for understanding C++ programming. It includes detailed units on operator overloading, exception handling, and templates, ensuring a well-rounded approach to object-oriented programming. Ideal for computer science students aiming to build a strong foundation in programming principles.

Key Points

  • Covers fundamental concepts of object-oriented programming using C++.
  • Includes detailed units on classes, objects, inheritance, and polymorphism.
  • Focuses on operator overloading, exception handling, and templates.
  • Designed for second-semester computer science students.
Sewang Rai.2
5 pages
Language:English
Type:Textbook
Sewang Rai.2
5 pages
Language:English
Type:Textbook
Sewang Rai.2
5 pages
Language:English
Type:Textbook
356

Object Oriented Programming Syllabus BIT153 pdf

/ 5
Object Oriented Programming
Course Title: Object Oriented Programming Full Marks: 60 + 20 + 20
Course No: BIT153 Pass Marks: 24 + 8 + 8
Nature of the Course: Theory + Lab Credit Hrs: 3
Semester: II
Course Description:
The course familiarizes students with the concepts of object oriented programming using C++.
Course Objective:
The main objective of this course is to understand the basics of object oriented programming. This
course covers the C++ concepts such as objects, class, operator overloading, inheritance and
polymorphism, file I/O, exception handling and templates.
Detailed Syllabus
Unit
Teaching Methodology
Teaching Hours
Unit 1: Introduction to Object Oriented Programming (3 Hrs.)
1.1 Overview of structured and object oriented
programming approach, Characteristics of object
oriented languages: Object, Class, Data
Abstraction, Encapsulation, Inheritance,
Polymorphism, Dynamic Binding, and Message
Passing.
Lecture
3
Unit 2: Basics of C++ programming (5 Hrs.)
2.1 C++ Program Structure, Character Set and
Tokens, Data Types, Type Conversion,
Preprocessor Directives, Namespace,
Input/Output Streams (cin and cout object,
Cascading of IO Operators) Manipulators (endl,
setw, and setprecision), Dynamic Memory
Allocation with new and delete, Review of Control
Statements.
2.2 Functions: Function Overloading, Inline
Functions, Default Argument, Pass by Reference,
Return by Reference, Scope and Storage Class.
2.3 Pointers: Review of Pointer variables declaration
& initialization, Operators in pointers/Pointer
Arithmetic, Pointers and Arrays, Pointer and
Function.
Lecture + Laboratory
Work
2
2
1
Unit 3: Class and Objects (10 Hrs.)
3.1 Structures and Classes, Class and Object,
Accessing members of class, Memory allocation
Lecture + Laboratory
Work
3
for Objects, Defining Member functions of the
class (inside and outside the class).
3.2 Initialization of class object (Constructor),
Destructor, Types of Constructor (Default
Constructor, Parameterized Constructor, Copy
Constructor, The Default Copy Constructor).
3.3 Objects as Function Arguments, Returning
Objects from Functions, Static members (Static
data members and static member functions).
3.4 Friend Function and Friend Class, Copy
Initialization, This Pointer.
3
2
2
Unit 4: Operator Overloading (7 Hrs.)
4.1 Fundamental of operator overloading, Restriction
on operator overloading (operators that cannot be
overloaded), Rules for Overloading Operators.
Operator functions as a class members.
4.2 Overloading unary Operators: Overloading Pre-
increment, Post-increment, and Negation
Operator.
4.3 Overloading Binary Operators: Overloading Plus
Operator, Overloading Comparison Operator,
String Concatenation using operator overloading.
4.4 Data Conversion: Basic to User-defined/class,
User-defined/class to Basic, User-defined/class to
User-defined/class.
Lecture + Laboratory
Work
1
2
2
2
Unit 5: Inheritance (7 Hrs.)
5.1 Introduction to inheritance, Derived Class and
Base Class, Access Specifiers (private, protected,
and public).
5.2 Types/Forms of inheritance (Single, Multiple,
Hierarchical, Multilevel, Hybrid), Public,
Protected and Private Inheritance.
5.3 Constructor and Destructor in derived classes
(Order of execution of Constructors and
Destructors).
5.4 Aggregation, Aggregation vs. Inheritance,
Ambiguity (Ambiguity in Multiple and Multipath
Inheritance), Virtual Base Class.
Lecture + Laboratory
Work
1.5
2.5
1
2
Unit 6: Virtual Function, Polymorphism, and other C++ Features (3 Hrs.)
6.1 Concept of Static and Dynamic
Polymorphism, Pointers to Base Class,
Concept of Virtual functions, Implementation
of Dynamic Polymorphism, Abstract class,
Lecture + Laboratory
Work
3
Concrete Class, Pure Virtual Functions,
Virtual Destructors, Roles of Polymorphism.
Unit 7: Function Templates and Exception Handling (4 Hrs.)
7.1 Templates: Introduction, Function Templates,
Function templates with multiple arguments,
Class Templates, Templates and Inheritance,
Rules for Using Templates.
7.2 Exception Handling: Introduction,
Mechanism of Exception Handling, Try, catch
and throw statements, Multiple Catch
Statement, Catching All Exceptions, Uses of
exception handling.
Lecture + Laboratory
Work
2
2
Unit 8: File and Streams (6 Hrs.)
8.1 Stream Class Hierarchy, File pointers (Read
and Write Pointer), Reading and Writing Text
Files, Detecting end of file, Reading and
Writing Binary Files
8.2 Reading and Writing Objects, Random File
Access.
Lecture + Laboratory
Work
4
2
Text Book
1. Robert Lafore, Object Oriented Programming in C++, Fourth Edition, SAMS
publications.
Reference Books
2. Deitel and Deitel, C++ How to Program, Third Edition, Pearson Publication.
3. Joyce Farrell, Object-oriented programming using C++, Fourth Edition, Cengage
Learning.
4. Herbert Schildt, C++ The Complete Reference, Fourth Edition, Tata McGraw Hill
5. Publication.
6. E. Balagurusamy, “Object Oriented Programming With C++”, 7
th
Edition, Mc Graw Hill
India.
7. A. S. Saud, “C++ Programming with Object Oriented Approach”, 2
nd
Edition, KEC
Publication and Distributor.
/ 5
End of Document
356

FAQs

What are the main objectives of the Object Oriented Programming course BIT153?
The main objective of the Object Oriented Programming course BIT153 is to help students understand the basics of object-oriented programming using C++. The course covers essential C++ concepts such as objects, classes, operator overloading, inheritance, polymorphism, file I/O, exception handling, and templates. This foundational knowledge prepares students for practical applications in programming.
What topics are included in Unit 3 of the syllabus?
Unit 3 of the syllabus focuses on Classes and Objects, spanning 10 hours. It covers structures and classes, the relationship between classes and objects, accessing class members, and memory allocation for objects. Additionally, it includes the initialization of class objects through constructors, the use of destructors, and various types of constructors such as default, parameterized, and copy constructors.
How does the syllabus address operator overloading?
The syllabus includes a dedicated Unit 4 on Operator Overloading, which consists of 7 hours of instruction. It discusses the fundamentals of operator overloading, including restrictions on which operators can be overloaded and the rules for doing so. The unit also covers overloading unary operators, such as pre-increment and post-increment, and binary operators, including the plus operator and comparison operators, as well as string concatenation.
What is the significance of templates in C++ as per the syllabus?
Templates are covered in Unit 7 of the syllabus, which emphasizes their importance in C++. The unit introduces function templates and class templates, explaining how they allow for the creation of generic functions and classes that can operate with any data type. This flexibility enhances code reusability and efficiency. The syllabus also discusses the rules for using templates and their role in inheritance.
What are the key features of inheritance discussed in the course?
Unit 5 of the syllabus focuses on Inheritance, detailing its significance in object-oriented programming. It introduces the concepts of derived and base classes, access specifiers (private, protected, public), and the various types of inheritance, including single, multiple, hierarchical, multilevel, and hybrid inheritance. The unit also addresses the order of execution of constructors and destructors in derived classes, as well as issues related to ambiguity in multiple inheritance.
What is covered in the exception handling section of the syllabus?
The syllabus includes a section on Exception Handling in Unit 7, which introduces the mechanism of exception handling in C++. It explains the use of try, catch, and throw statements, along with the concept of multiple catch statements and how to catch all exceptions. This section emphasizes the importance of exception handling in creating robust and error-resistant programs.
What are the main components of the course's assessment structure?
The assessment structure for the Object Oriented Programming course BIT153 includes full marks of 60, divided into three parts: 20 marks for internal assessments, 20 marks for lab work, and 20 marks for the final exam. To pass, students must achieve a minimum of 24 marks in the theory component and 8 marks in both the lab and internal assessments.