Back close

Course Detail

Course Name Object Oriented Programming
Course Code 19AIE105
Program B. Tech. in Computer Science and Engineering (Artificial Intelligence)
Semester 1
Year Taught 2019


Introduction to Scratch/Blockly Visual programming and program constructs. Introduction to Java Language and Runtime Environment- Basic program syntax, Hello world, Data types, variables and Functions – Value types and Reference types, Implicit Pointers and the Null Pointer exceptions – Objects in Java, Class file, constructor functions, Class members and method, Class Instance variables, the Object class, new Operators, Heap allocation and Garbage collector – Basic Java API, Stream classes and objects for Data IO, hierarchy of data streams in Java, Throwable type hierarchy and exception handling syntax, the Thread class. Object-Oriented Concepts-Abstraction, Encapsulation, Inheritance and PolymorphismAbstract Class, partially abstract and purely abstract, purely abstract class called Interface. Inheritance a way of extending classes, multiple inheritances and implements relation with Interfaces, The Base class and Derived class. Revisiting Instance and Class variables-Static and Dynamic Polymorphisms, Overloading and Overriding, Idea of a virtual function. Revisiting Thread API, the Runnable Interface, Other major Interfaces, Cloneable, Serializable and Observable. Interface as a mode of Type Polymorphism. UML Diagrams, Object relations and interactions, Containment and cardinality, Cohesion and Coupling. Object-Oriented Design Patterns: Creational: Factory, Singleton, Pool and Prototype – Behavioural: Command, Iterator, Memento, Observer, State, Visitor – Structural: Adapter, Bridge, Decorator, Flyweight and Proxy.

Objectives and Outcomes

Course Objectives

The course will provide an introduction to object oriented programming. It will expose the students to the paradigm of object oriented programming. Students will also be motivated to solve the problems in engineering using the concepts of object oriented programming.

Course Outcomes

CO1 Understand Abstraction in all forms and in a holistic way
CO2 Observe and Analyse object-oriented Software to effectively utilise its features.
CO3 To enable the students to design and implement programs using standard design patterns to solve general problems.


PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1 3 3 2 2 3 3 2 3 3
CO2 3 3 3 3 3 2 3 2 3 3
CO3 3 2 3 3 3 3 2 3 3

Course Evaluation Pattern:

Internal – 75%

  • Assignments – 50% (20 assignments with equal credit)
  • Quiz- 25% (5 Quizzes with equal credit)

External – 25%

  • Project – 25%

Text Books / References

  1. Blaha, Michael. Object-Oriented Modelling and Design with UML: For VTU, 2/e. Pearson Education India, 2005.
  2. Robert Lafore, Object-Oriented Programming in C++ , Pearson Education India, 2017.
  3. Bert Bates, Kathy Sierra, Head First Java, O Reilly, second edition, 2009.

DISCLAIMER: The appearance of external links on this web site does not constitute endorsement by the School of Biotechnology/Amrita Vishwa Vidyapeetham or the information, products or services contained therein. For other than authorized activities, the Amrita Vishwa Vidyapeetham does not exercise any editorial control over the information you may find at these locations. These links are provided consistent with the stated purpose of this web site.

Admissions Apply Now