Purpose:

To introduce students to the concepts, skills; and practices of object oriented programming.

Learning Outcomes: 

By the end of this unit students should be able to:

  1. Explain the principles of the object –oriented paradigm and its relationship to traditional methods
  2. Describe the process of object-oriented programming and design using an object oriented language
  3. Demonstrate the use of object orientation technologies and tools in problem solving

Course Description:

Introduction to OOP basic concepts, inheritance, encapsulation, polymorphism, message passing; IDE for developing OOP programs; editing, compiling and executing an OOP; general format of an OOP program; variables: local variables, global variables instance variables and static variables; arrays; single and multiple dimension arrays, data types, comments; abstract data types and primitive data types, typed data types (classes): abstract/virtual and concrete classes. Implementation of OOP concepts: constructors and destructors: use of constructors and destructors, characteristics of a contractor. Inheritance of contractors. Function: virtual, friend, pure virtual USE functions. Passing of values: pass-by-reference and pass-by-value. Errors and exceptions. Thread and concurrency control. Use C++ for implementation.

The purpose of this course is to enable you understand the concepts and principles computer programming.