Object Oriented Programming - Syllabus

Embark on a profound academic exploration as you delve into the Object Oriented Programming course () within the distinguished Tribhuvan university's CSIT department. Aligned with the 2065 Syllabus, this course (CSC-202) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60+20+20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.

This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.


Course Synopsis:Study of basic programming skills, the concept of object oriented and its feature implementing the features.
                       
Goal: To provide the object oriented programming approach to solve the problem.

Units

Unit 1

1.1    Introduction to Programming Concept: Overview of structural programming approach, Object oriented approach, Features of object oriented languages, Components of object oriented languages like object, class.        

                 

1.2    Elements of Object Oriented Languages: Introduction to inheritance, polymorphism, abstraction.


1.3    C++ basics: Introduction, Basic Program Construction like functions and program statements. Output using cout, Directives: Preprocessor Directives, Header Files, The using directives. Comments: Comment Syntax. Integer Variables: Definition, declaration, variables names, assignment statements, integers constants, output variable. Input with cin, Operators, library functions.


Unit 2

2.1  Control Structures: Introduction, control statements, The if selection structure, The if/else selection structure, The while structure, The For structure, The switch structure, The do/while structure, The break and continue statement.


2.2  The Functions: Introduction, Math library functions, Definition/Prototypes, Header files, Storage classes, Scope rules, Recursion, Inline functions, Function Overloading, Function Templates.


2.3  Arrays: Introduction, Declaring arrays, Passing arrays to functions, Types of arrays.


2.4  Pointers: Introduction, Pointer variables declaration & initialization, Operators in pointers, Calling functions by reference, Relationship between pointers & arrays, arrays of pointers, Function pointers.


Unit 3

3.1  Classes & Objects: Introduction, Features of class, Object and its features, Declaration of class, Using the class, Accessing members of class, Class scope, Initialization class objects: Constructor, Destructor. Object as function arguments: Overload constructor, Member functions defined outside the class, Objects as arguments.                                                          


3.2  Operator Overloading: Introduction, Fundamental of operator overloading, Restriction on operator overloading, Operator functions as a class members, Overloading stream-insertion and stream-extraction operators, Overloading unary and binary operators.                                                                                              

3.3  Inheritance: Introduction, Types of inheritance, Protected members, Casting base class pointers to derived – class pointers, Public, protected, and private inheritance. Constructor and Destructor in derived classes.         


3.4  Virtual Functions & Polymorphisms: Introduction, Type fields & switch statements, Virtual functions, Abstract base classes & Concrete classes, Polymorphism and its roles.


3.5  Templates: Introduction, Function templates, overloading templates functions, class templates, templates & inheritance.


3.6  Exceptional Handling: Introduction, Use of exceptional handling, Try, throw and catch.