Object Oriented
Programming I
,Abstraction
, Introduction
In this lecture we will explore how abstraction allows us
to manage complexity by hiding unnecessary details and
focusing on essential features.
Think of a car's accelerator pedal. As a driver, you don't
need to know the complex internal combustion
processes to increase the car's speed. You only need to
know that pressing the pedal makes the car go faster.
This is abstraction in action—separating the "what"
from the "how".
In this topic, we will learn how to design software that
is more manageable, reusable, and robust. Abstraction
is one of the four pillars of OOP, alongside
Encapsulation, Inheritance, and Polymorphism.
It’s a core principle that helps us create elegant and
scalable solutions. 3
SPC2204: Object Oriented Programming 1
, Introduction
What is Abstraction?
Abstraction is a design principle that involves
hiding the complexity and exposing only the
essential functionality to the user.
It's about providing a simplified, high-level view
of an object or system while concealing the low-
level, intricate implementation details.
The user interacts with the simple interface
without needing to understand the underlying
mechanisms.
4
SPC2204: Object Oriented Programming 1
Programming I
,Abstraction
, Introduction
In this lecture we will explore how abstraction allows us
to manage complexity by hiding unnecessary details and
focusing on essential features.
Think of a car's accelerator pedal. As a driver, you don't
need to know the complex internal combustion
processes to increase the car's speed. You only need to
know that pressing the pedal makes the car go faster.
This is abstraction in action—separating the "what"
from the "how".
In this topic, we will learn how to design software that
is more manageable, reusable, and robust. Abstraction
is one of the four pillars of OOP, alongside
Encapsulation, Inheritance, and Polymorphism.
It’s a core principle that helps us create elegant and
scalable solutions. 3
SPC2204: Object Oriented Programming 1
, Introduction
What is Abstraction?
Abstraction is a design principle that involves
hiding the complexity and exposing only the
essential functionality to the user.
It's about providing a simplified, high-level view
of an object or system while concealing the low-
level, intricate implementation details.
The user interacts with the simple interface
without needing to understand the underlying
mechanisms.
4
SPC2204: Object Oriented Programming 1