0% found this document useful (0 votes)
42 views

Object-Oriented Programming (OOP) Lecture No. 1

This document provides an overview of an object-oriented programming course. The course objectives are to familiarize students with OOP concepts like objects, classes, inheritance, and polymorphism. The course contents will cover these concepts as well as overloading, generic programming, exception handling, and design patterns. Students will be graded based on assignments, discussions, a midterm, and final exam. The document then provides background on object-orientation, defining it as a modeling technique using interacting objects and describing the advantages of OOP modeling.

Uploaded by

Muhammad Zeeshan
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views

Object-Oriented Programming (OOP) Lecture No. 1

This document provides an overview of an object-oriented programming course. The course objectives are to familiarize students with OOP concepts like objects, classes, inheritance, and polymorphism. The course contents will cover these concepts as well as overloading, generic programming, exception handling, and design patterns. Students will be graded based on assignments, discussions, a midterm, and final exam. The document then provides background on object-orientation, defining it as a modeling technique using interacting objects and describing the advantages of OOP modeling.

Uploaded by

Muhammad Zeeshan
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 18

Object-Oriented Programming

(OOP)
Lecture No. 1
Course Objective

► Objective of this course is to make students


familiar with the concepts of object-oriented
programming

► Concepts
will be reinforced by their
implementation in C++
Course Contents
► Object-Orientation
► Objects and Classes
► Overloading
► Inheritance
► Polymorphism
► Generic Programming
► Exception Handling
► Introduction to Design Patterns
Books
► C++ How to Program
By Deitel & Deitel

► The C++ Programming Language


By Bjarne Stroustrup

► Object-Oriented Software Engineering


By Jacobson, Christerson, Jonsson, Overgaard
Grading Policy

► Assignments 15 %
► Group Discussion 5%
► Mid-Term 35 %
► Final 45 %
Object-Orientation (OO)
What is Object-Orientation?

►A technique for system modeling

► OO model consists of several interacting


objects
What is a Model?

►A model is an abstraction of something

► Purposeis to understand the product before


developing it
Examples – Model

► Highway maps

► Architectural models

► Mechanical models
Example – OO Model
…Example – OO Model
► Objects lives-in
Ali House
 Ali
drives
 House
 Car
Car Tree
 Tree
► Interactions
 Ali lives in the house
 Ali drives the car
Object-Orientation - Advantages
► People think in terms of objects

► OO models map to reality

► Therefore, OO models are


 easy to develop
 easy to understand
What is an Object?
An object is

► Something tangible (Ali, Car)

► Something that can be apprehended


intellectually (Time, Date)
… What is an Object?
An object has

► State (attributes)
► Well-defined behaviour (operations)
► Unique identity
Example – Ali is a Tangible Object
► State (attributes)
 Name
 Age
► behaviour (operations)
 Walks
 Eats
► Identity
 His name
Example – Car is a Tangible Object
► State (attributes)
- Color
- Model
► behaviour (operations)
- Accelerate - Start Car
- Change Gear
► Identity
- Its registration number
Example – Time is an Object
Apprehended Intellectually
► State (attributes)
- Hours - Seconds
- Minutes
► behaviour (operations)
- Set Hours - Set Seconds
- Set Minutes
► Identity
- Would have a unique ID in the model
Example – Date is an Object
Apprehended Intellectually
► State (attributes)
- Year - Day
- Month
► behaviour (operations)
- Set Year - Set Day
- Set Month
► Identity
- Would have a unique ID in the model

You might also like