SlideShare a Scribd company logo
Presented by
Deborah Ewurama Minka Akuoko…
OOP BASIC OVERVIEW
… USING C++
A program = software = application = a set of instructions organised to
perform specific activities when executed or run…
A program is written by a programming language. e.g c++
WHAT IN THE FIRST PLACE IS A PROGRAM ?
❖ Object oriented programming - OOP
❖ Programmer thinks about and defines the attributes and behavior of real
life objects but does it in a logical way.
❖ Often the objects are modeled after real-world entities.
❖ Very different approach than function-based programming (like C).
WHAT IS OOP
❖ Unstructured
❖ Procedural
❖ Modular or Structured
❖ Object Oriented Programming
KINDS OF PROGRAMMING TECHNIQUES
Usually, people st to learn a programming language by writing small
and simple programs that consist mainly of one main program.
Here the term ―main programǁ stands for a sequence of commands or statements,
which modify global data, throughout the whole program. Figure 1
illustrates this concept.
Unstructured programming techniques provide tremendous
disadvantages once a program gets sufficiently large.
For example, if the same statement sequence is needed at different locations within the program,
the same sequence of statements must be repeatedly copied to
the new locations.
UNSTRUCTURED
The natural improvement to the unstructured programming technique was the introduction of the
Procedural Programming technique.
In such a technique, a sequence of instructions used to perform a specific task
are grouped together and then called a Program.
The main program directly operates on global data needed. The grouping of such
instructions is called a Procedure.
PROCEDURAL
In procedural programming, a single program is divided into smaller pieces called procedures. To
enable the usage of general procedures, or groups of procedures, in other programs, such
procedures must be separately available.
Modular programming allows the grouping of procedures into what is known as modules.
With modular programming, procedures of common functionality are
grouped together into separate modules.
A program therefore no longer consists of only one single part rather is now divided into several
smaller parts which interact with each other through procedure calls. Each module can have its own
data. This allows each - module to manage an internal state that is modified by calls to procedures
of this module.
However, there is only one state per module and each module
exists at most once in the whole program.
MODULAR OR STRUCTURED
Due to the problems rose with the former techniques of programming; especially, when programs
get larger, the object- oriented programming was introduced as a new programming technique.
Many object-oriented programming languages were Implemented and introduced for this technique;
however, C++ was one of the most powerful true object oriented languages that were introduced
OOP
Object:
This is the basic unit of object oriented programming. That is both data and function that operate
on data are bundled as a unit called object.
Class:
When you define a class, you define a blueprint for an object. This doesn't actually define any data,
but it does define what the class name means, that is, what an object of the class will consist of
and what operations can be performed on such an object.
Abstraction:
Data abstraction refers to, providing only essential information to the outside world and hiding their
background details, i.e., to represent the needed information in program without presenting the
details.
For example, a database system hides certain details of how data is stored and created and
maintained. Similar way, C++ classes provides different methods to the outside world without giving
internal detail about those methods and data.
OOP FEATURES
Encapsulation:
Encapsulation is placing the data and the functions that work on that data in the same place. While
working with procedural languages, it is not always clear which functions work on which variables
but object-oriented programming provides you framework to place the data and the relevant
functions together in the same object.
Inheritance:
One of the most useful aspects of object-oriented programming is code reusability. As the name
suggests Inheritance is the process of forming a new class from an existing class that is from the
existing class called as base class, new class is formed called as derived class.
This is a very important concept of object-oriented programming since this feature helps to reduce
the code size.
OOP FEATURES
Polymorphism:
The ability to use an operator or function in different ways in other words giving different meaning
or functions to the operators or functions is called polymorphism. Poly refers to many. That is a
single function or an operator functioning in many ways different upon the usage is called
polymorphism.
Overloading:
The concept of overloading is also a branch of polymorphism. When the exiting operator or function
is made to operate on new data type, it is said to be overloaded.
OOP FEATURES
❖ Improved software-development productivity: Object-oriented programming is modular, as it
provides separation of duties in object-based program development. Each object exists
independently.
➢ Objects can also be reused within an across applications.
■ Because of these three factors – modularity, extensibility, and reusability – object-
oriented programming provides improved software-development productivity over
traditional procedure-based programming techniques.
❖ Improved software maintainability: For the reasons mentioned above, object-oriented software
is also easier to maintain.
➢ Since the design is modular, part of the system can be updated in case of issues without a
need to make large-scale changes.
OOP ADVANTAGES
❖ Faster development: Reuse enables faster development.
➢ Object-oriented programming languages come with rich libraries of objects, and code
developed during projects is also reusable in future projects
❖ Lower cost of development: The reuse of software also lowers the cost of
development. Typically, more effort is put into the object-oriented analysis and
design, which lowers the overall cost of development
OOP ADVANTAGES
❖ Higher-quality software: Faster development of software and lower cost of development allows
more time and resources to be used in the verification of the software. Although quality is
dependent upon the experience of the teams, object-oriented programming tends to result in
higher-quality software.
OOP ADVANTAGES
❖ Steep learning curve: The thought process involved in object-oriented programming may not be
natural for some people, and it can take time to get used to it.
➢ It is complex to create programs based on interaction of objects.
■ Some of the key programming techniques, such as inheritance and polymorphism, can
be challenging to comprehend initially.
❖ Larger program size: Object-oriented programs typically involve more lines of code than
procedural programs.
OOP DISADVANTAGES
❖ Slower programs: Object-oriented programs are typically slower than procedure-based programs,
as they typically require more instructions to be executed.
❖ Not suitable for all types of problems: There are problems that lend themselves well to
functional-programming style, logic-programming style, or procedure-based programming style,
and applying object-oriented programming in those situations will not result in efficient programs
OOP DISADVANTAGES
❖ User interface design such as windows, menu ,…
❖ Real Time Systems
❖ Simulation and Modeling
❖ Object oriented databases
❖ AI and Expert System
❖ Neural Networks and parallel programming
❖ Decision support and office automation system
OOP APPLICATIONS
Ad

More Related Content

What's hot (20)

Class and Objects in Java
Class and Objects in JavaClass and Objects in Java
Class and Objects in Java
Spotle.ai
 
Inheritance ppt
Inheritance pptInheritance ppt
Inheritance ppt
Nivegeetha
 
Java interfaces
Java   interfacesJava   interfaces
Java interfaces
Elizabeth alexander
 
Object oriented programming c++
Object oriented programming c++Object oriented programming c++
Object oriented programming c++
Ankur Pandey
 
Stream classes in C++
Stream classes in C++Stream classes in C++
Stream classes in C++
Shyam Gupta
 
Basic concept of OOP's
Basic concept of OOP'sBasic concept of OOP's
Basic concept of OOP's
Prof. Dr. K. Adisesha
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
Amit Soni (CTFL)
 
OOP java
OOP javaOOP java
OOP java
xball977
 
Object and class relationships
Object and class relationshipsObject and class relationships
Object and class relationships
Pooja mittal
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
baabtra.com - No. 1 supplier of quality freshers
 
Encapsulation in C++
Encapsulation in C++Encapsulation in C++
Encapsulation in C++
Hitesh Kumar
 
Object Oriented Language
Object Oriented LanguageObject Oriented Language
Object Oriented Language
dheva B
 
Oop c++class(final).ppt
Oop c++class(final).pptOop c++class(final).ppt
Oop c++class(final).ppt
Alok Kumar
 
CONTROL STRUCTURE
CONTROL STRUCTURECONTROL STRUCTURE
CONTROL STRUCTURE
Dr. Rosemarie Sibbaluca-Guirre
 
Functions in c++
Functions in c++Functions in c++
Functions in c++
Rokonuzzaman Rony
 
Object Oriented Programming Concepts for beginners
Object Oriented Programming Concepts for beginners Object Oriented Programming Concepts for beginners
Object Oriented Programming Concepts for beginners
Vibhawa Nirmal
 
Operators in C++
Operators in C++Operators in C++
Operators in C++
Sachin Sharma
 
Object oriented programming (oop) cs304 power point slides lecture 01
Object oriented programming (oop)   cs304 power point slides lecture 01Object oriented programming (oop)   cs304 power point slides lecture 01
Object oriented programming (oop) cs304 power point slides lecture 01
Adil Kakakhel
 
Java interface
Java interfaceJava interface
Java interface
Md. Tanvir Hossain
 
Fundamentals of Python Programming
Fundamentals of Python ProgrammingFundamentals of Python Programming
Fundamentals of Python Programming
Kamal Acharya
 

Viewers also liked (20)

OOP Basic
OOP BasicOOP Basic
OOP Basic
Yeti Sno
 
Object-oriented concepts
Object-oriented conceptsObject-oriented concepts
Object-oriented concepts
BG Java EE Course
 
Introduction to Object Oriented Programming
Introduction to Object Oriented ProgrammingIntroduction to Object Oriented Programming
Introduction to Object Oriented Programming
Moutaz Haddara
 
Oop Introduction
Oop IntroductionOop Introduction
Oop Introduction
guest7b957c71
 
OOP programming
OOP programmingOOP programming
OOP programming
anhdbh
 
Basic concepts of object oriented programming
Basic concepts of object oriented programmingBasic concepts of object oriented programming
Basic concepts of object oriented programming
Sachin Sharma
 
Algorithms overview
Algorithms overviewAlgorithms overview
Algorithms overview
Deborah Akuoko
 
ROI sofort - Enterprise 2.0 auf Basis von Lotus Notes und Domino
ROI sofort -  Enterprise 2.0 auf Basis von Lotus Notes und DominoROI sofort -  Enterprise 2.0 auf Basis von Lotus Notes und Domino
ROI sofort - Enterprise 2.0 auf Basis von Lotus Notes und Domino
Thomas Bahn
 
Simply - OOP - Simply
Simply - OOP - SimplySimply - OOP - Simply
Simply - OOP - Simply
Thomas Bahn
 
Object oriented programming by Waqas
Object oriented programming by WaqasObject oriented programming by Waqas
Object oriented programming by Waqas
Waqas !!!!
 
General oops concepts
General oops conceptsGeneral oops concepts
General oops concepts
nidhiyagnik123
 
Oops
OopsOops
Oops
Prabhu R
 
Parameterized Constructor
Parameterized ConstructorParameterized Constructor
Parameterized Constructor
Mukesh Pathak
 
03. oop concepts
03. oop concepts03. oop concepts
03. oop concepts
Haresh Jaiswal
 
SystemVerilog OOP Ovm Features Summary
SystemVerilog OOP Ovm Features SummarySystemVerilog OOP Ovm Features Summary
SystemVerilog OOP Ovm Features Summary
Amal Khailtash
 
Solid as OOP abstraction
Solid as OOP abstractionSolid as OOP abstraction
Solid as OOP abstraction
Pawel Klimczyk
 
Oop concepts
Oop conceptsOop concepts
Oop concepts
Melick Baranasooriya
 
Post-graduate course: Object technology: Prototype-based object-oriented prog...
Post-graduate course: Object technology: Prototype-based object-oriented prog...Post-graduate course: Object technology: Prototype-based object-oriented prog...
Post-graduate course: Object technology: Prototype-based object-oriented prog...
Baltasar García Perez-Schofield
 
Oops concept on c#
Oops concept on c#Oops concept on c#
Oops concept on c#
baabtra.com - No. 1 supplier of quality freshers
 
General OOP concept [by-Digvijay]
General OOP concept [by-Digvijay]General OOP concept [by-Digvijay]
General OOP concept [by-Digvijay]
Digvijay Singh Karakoti
 
Introduction to Object Oriented Programming
Introduction to Object Oriented ProgrammingIntroduction to Object Oriented Programming
Introduction to Object Oriented Programming
Moutaz Haddara
 
OOP programming
OOP programmingOOP programming
OOP programming
anhdbh
 
Basic concepts of object oriented programming
Basic concepts of object oriented programmingBasic concepts of object oriented programming
Basic concepts of object oriented programming
Sachin Sharma
 
ROI sofort - Enterprise 2.0 auf Basis von Lotus Notes und Domino
ROI sofort -  Enterprise 2.0 auf Basis von Lotus Notes und DominoROI sofort -  Enterprise 2.0 auf Basis von Lotus Notes und Domino
ROI sofort - Enterprise 2.0 auf Basis von Lotus Notes und Domino
Thomas Bahn
 
Simply - OOP - Simply
Simply - OOP - SimplySimply - OOP - Simply
Simply - OOP - Simply
Thomas Bahn
 
Object oriented programming by Waqas
Object oriented programming by WaqasObject oriented programming by Waqas
Object oriented programming by Waqas
Waqas !!!!
 
Parameterized Constructor
Parameterized ConstructorParameterized Constructor
Parameterized Constructor
Mukesh Pathak
 
SystemVerilog OOP Ovm Features Summary
SystemVerilog OOP Ovm Features SummarySystemVerilog OOP Ovm Features Summary
SystemVerilog OOP Ovm Features Summary
Amal Khailtash
 
Solid as OOP abstraction
Solid as OOP abstractionSolid as OOP abstraction
Solid as OOP abstraction
Pawel Klimczyk
 
Post-graduate course: Object technology: Prototype-based object-oriented prog...
Post-graduate course: Object technology: Prototype-based object-oriented prog...Post-graduate course: Object technology: Prototype-based object-oriented prog...
Post-graduate course: Object technology: Prototype-based object-oriented prog...
Baltasar García Perez-Schofield
 
Ad

Similar to Oop basic overview (20)

Object Oriented programming - Introduction
Object Oriented programming - IntroductionObject Oriented programming - Introduction
Object Oriented programming - Introduction
Madishetty Prathibha
 
PCCF-UNIT 2-1 new.docx
PCCF-UNIT 2-1 new.docxPCCF-UNIT 2-1 new.docx
PCCF-UNIT 2-1 new.docx
prakashvs7
 
Lecture No.1.pptx
Lecture No.1.pptxLecture No.1.pptx
Lecture No.1.pptx
anzazubair91
 
PCCF UNIT 2.pptx
PCCF UNIT 2.pptxPCCF UNIT 2.pptx
PCCF UNIT 2.pptx
DivyaKS12
 
PCCF UNIT 2 CLASS.pptx
PCCF UNIT 2 CLASS.pptxPCCF UNIT 2 CLASS.pptx
PCCF UNIT 2 CLASS.pptx
vishnupriyapm4
 
Introduction to object oriented language
Introduction to object oriented languageIntroduction to object oriented language
Introduction to object oriented language
farhan amjad
 
OOPS_Unit_1
OOPS_Unit_1OOPS_Unit_1
OOPS_Unit_1
Shipra Swati
 
Oop.pptx
Oop.pptxOop.pptx
Oop.pptx
KalGetachew2
 
Block_1_Unit- I.pdf bca learning for exam you
Block_1_Unit- I.pdf  bca learning  for exam youBlock_1_Unit- I.pdf  bca learning  for exam you
Block_1_Unit- I.pdf bca learning for exam you
vosawe9128
 
Unit 1- Basic concept of object-oriented-programming.ppt
Unit 1- Basic concept of object-oriented-programming.pptUnit 1- Basic concept of object-oriented-programming.ppt
Unit 1- Basic concept of object-oriented-programming.ppt
hannahroseline2
 
chapter-6-oops.pdf
chapter-6-oops.pdfchapter-6-oops.pdf
chapter-6-oops.pdf
study material
 
object oriented programming(oops)
object oriented programming(oops)object oriented programming(oops)
object oriented programming(oops)
HANISHTHARWANI21BCE1
 
Unit 2.pptx
Unit 2.pptxUnit 2.pptx
Unit 2.pptx
SherinRappai
 
Unit 2.pptx
Unit 2.pptxUnit 2.pptx
Unit 2.pptx
SherinRappai1
 
Unit 1 introduction to c++.pptx
Unit 1 introduction to c++.pptxUnit 1 introduction to c++.pptx
Unit 1 introduction to c++.pptx
shashiden1
 
1. OBJECT ORIENTED PROGRAMMING USING JAVA - OOps Concepts.ppt
1. OBJECT ORIENTED PROGRAMMING USING JAVA - OOps Concepts.ppt1. OBJECT ORIENTED PROGRAMMING USING JAVA - OOps Concepts.ppt
1. OBJECT ORIENTED PROGRAMMING USING JAVA - OOps Concepts.ppt
sagarjsicg
 
object oriented programming in c++ introduction lecture 1.pptx
object oriented programming in c++ introduction lecture 1.pptxobject oriented programming in c++ introduction lecture 1.pptx
object oriented programming in c++ introduction lecture 1.pptx
amna hussain
 
6_Object-oriented-using-java.pdf object oriented programming concepts
6_Object-oriented-using-java.pdf object oriented programming concepts6_Object-oriented-using-java.pdf object oriented programming concepts
6_Object-oriented-using-java.pdf object oriented programming concepts
harinipradeep15
 
DOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in cDOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in c
floraaluoch3
 
Lesson 1 - Object Oriented Programming CPP103.pptx
Lesson 1 - Object Oriented Programming CPP103.pptxLesson 1 - Object Oriented Programming CPP103.pptx
Lesson 1 - Object Oriented Programming CPP103.pptx
LuiFlor
 
Object Oriented programming - Introduction
Object Oriented programming - IntroductionObject Oriented programming - Introduction
Object Oriented programming - Introduction
Madishetty Prathibha
 
PCCF-UNIT 2-1 new.docx
PCCF-UNIT 2-1 new.docxPCCF-UNIT 2-1 new.docx
PCCF-UNIT 2-1 new.docx
prakashvs7
 
PCCF UNIT 2.pptx
PCCF UNIT 2.pptxPCCF UNIT 2.pptx
PCCF UNIT 2.pptx
DivyaKS12
 
PCCF UNIT 2 CLASS.pptx
PCCF UNIT 2 CLASS.pptxPCCF UNIT 2 CLASS.pptx
PCCF UNIT 2 CLASS.pptx
vishnupriyapm4
 
Introduction to object oriented language
Introduction to object oriented languageIntroduction to object oriented language
Introduction to object oriented language
farhan amjad
 
Block_1_Unit- I.pdf bca learning for exam you
Block_1_Unit- I.pdf  bca learning  for exam youBlock_1_Unit- I.pdf  bca learning  for exam you
Block_1_Unit- I.pdf bca learning for exam you
vosawe9128
 
Unit 1- Basic concept of object-oriented-programming.ppt
Unit 1- Basic concept of object-oriented-programming.pptUnit 1- Basic concept of object-oriented-programming.ppt
Unit 1- Basic concept of object-oriented-programming.ppt
hannahroseline2
 
Unit 1 introduction to c++.pptx
Unit 1 introduction to c++.pptxUnit 1 introduction to c++.pptx
Unit 1 introduction to c++.pptx
shashiden1
 
1. OBJECT ORIENTED PROGRAMMING USING JAVA - OOps Concepts.ppt
1. OBJECT ORIENTED PROGRAMMING USING JAVA - OOps Concepts.ppt1. OBJECT ORIENTED PROGRAMMING USING JAVA - OOps Concepts.ppt
1. OBJECT ORIENTED PROGRAMMING USING JAVA - OOps Concepts.ppt
sagarjsicg
 
object oriented programming in c++ introduction lecture 1.pptx
object oriented programming in c++ introduction lecture 1.pptxobject oriented programming in c++ introduction lecture 1.pptx
object oriented programming in c++ introduction lecture 1.pptx
amna hussain
 
6_Object-oriented-using-java.pdf object oriented programming concepts
6_Object-oriented-using-java.pdf object oriented programming concepts6_Object-oriented-using-java.pdf object oriented programming concepts
6_Object-oriented-using-java.pdf object oriented programming concepts
harinipradeep15
 
DOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in cDOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in c
floraaluoch3
 
Lesson 1 - Object Oriented Programming CPP103.pptx
Lesson 1 - Object Oriented Programming CPP103.pptxLesson 1 - Object Oriented Programming CPP103.pptx
Lesson 1 - Object Oriented Programming CPP103.pptx
LuiFlor
 
Ad

Recently uploaded (20)

Kubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptxKubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptx
CloudScouts
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
How can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptxHow can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptx
laravinson24
 
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New VersionPixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
saimabibi60507
 
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and CollaborateMeet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Maxim Salnikov
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
ssuserb14185
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Kubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptxKubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptx
CloudScouts
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
How can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptxHow can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptx
laravinson24
 
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New VersionPixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
saimabibi60507
 
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and CollaborateMeet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Maxim Salnikov
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
ssuserb14185
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 

Oop basic overview

  • 3. A program = software = application = a set of instructions organised to perform specific activities when executed or run… A program is written by a programming language. e.g c++ WHAT IN THE FIRST PLACE IS A PROGRAM ?
  • 4. ❖ Object oriented programming - OOP ❖ Programmer thinks about and defines the attributes and behavior of real life objects but does it in a logical way. ❖ Often the objects are modeled after real-world entities. ❖ Very different approach than function-based programming (like C). WHAT IS OOP
  • 5. ❖ Unstructured ❖ Procedural ❖ Modular or Structured ❖ Object Oriented Programming KINDS OF PROGRAMMING TECHNIQUES
  • 6. Usually, people st to learn a programming language by writing small and simple programs that consist mainly of one main program. Here the term ―main programǁ stands for a sequence of commands or statements, which modify global data, throughout the whole program. Figure 1 illustrates this concept. Unstructured programming techniques provide tremendous disadvantages once a program gets sufficiently large. For example, if the same statement sequence is needed at different locations within the program, the same sequence of statements must be repeatedly copied to the new locations. UNSTRUCTURED
  • 7. The natural improvement to the unstructured programming technique was the introduction of the Procedural Programming technique. In such a technique, a sequence of instructions used to perform a specific task are grouped together and then called a Program. The main program directly operates on global data needed. The grouping of such instructions is called a Procedure. PROCEDURAL
  • 8. In procedural programming, a single program is divided into smaller pieces called procedures. To enable the usage of general procedures, or groups of procedures, in other programs, such procedures must be separately available. Modular programming allows the grouping of procedures into what is known as modules. With modular programming, procedures of common functionality are grouped together into separate modules. A program therefore no longer consists of only one single part rather is now divided into several smaller parts which interact with each other through procedure calls. Each module can have its own data. This allows each - module to manage an internal state that is modified by calls to procedures of this module. However, there is only one state per module and each module exists at most once in the whole program. MODULAR OR STRUCTURED
  • 9. Due to the problems rose with the former techniques of programming; especially, when programs get larger, the object- oriented programming was introduced as a new programming technique. Many object-oriented programming languages were Implemented and introduced for this technique; however, C++ was one of the most powerful true object oriented languages that were introduced OOP
  • 10. Object: This is the basic unit of object oriented programming. That is both data and function that operate on data are bundled as a unit called object. Class: When you define a class, you define a blueprint for an object. This doesn't actually define any data, but it does define what the class name means, that is, what an object of the class will consist of and what operations can be performed on such an object. Abstraction: Data abstraction refers to, providing only essential information to the outside world and hiding their background details, i.e., to represent the needed information in program without presenting the details. For example, a database system hides certain details of how data is stored and created and maintained. Similar way, C++ classes provides different methods to the outside world without giving internal detail about those methods and data. OOP FEATURES
  • 11. Encapsulation: Encapsulation is placing the data and the functions that work on that data in the same place. While working with procedural languages, it is not always clear which functions work on which variables but object-oriented programming provides you framework to place the data and the relevant functions together in the same object. Inheritance: One of the most useful aspects of object-oriented programming is code reusability. As the name suggests Inheritance is the process of forming a new class from an existing class that is from the existing class called as base class, new class is formed called as derived class. This is a very important concept of object-oriented programming since this feature helps to reduce the code size. OOP FEATURES
  • 12. Polymorphism: The ability to use an operator or function in different ways in other words giving different meaning or functions to the operators or functions is called polymorphism. Poly refers to many. That is a single function or an operator functioning in many ways different upon the usage is called polymorphism. Overloading: The concept of overloading is also a branch of polymorphism. When the exiting operator or function is made to operate on new data type, it is said to be overloaded. OOP FEATURES
  • 13. ❖ Improved software-development productivity: Object-oriented programming is modular, as it provides separation of duties in object-based program development. Each object exists independently. ➢ Objects can also be reused within an across applications. ■ Because of these three factors – modularity, extensibility, and reusability – object- oriented programming provides improved software-development productivity over traditional procedure-based programming techniques. ❖ Improved software maintainability: For the reasons mentioned above, object-oriented software is also easier to maintain. ➢ Since the design is modular, part of the system can be updated in case of issues without a need to make large-scale changes. OOP ADVANTAGES
  • 14. ❖ Faster development: Reuse enables faster development. ➢ Object-oriented programming languages come with rich libraries of objects, and code developed during projects is also reusable in future projects ❖ Lower cost of development: The reuse of software also lowers the cost of development. Typically, more effort is put into the object-oriented analysis and design, which lowers the overall cost of development OOP ADVANTAGES
  • 15. ❖ Higher-quality software: Faster development of software and lower cost of development allows more time and resources to be used in the verification of the software. Although quality is dependent upon the experience of the teams, object-oriented programming tends to result in higher-quality software. OOP ADVANTAGES
  • 16. ❖ Steep learning curve: The thought process involved in object-oriented programming may not be natural for some people, and it can take time to get used to it. ➢ It is complex to create programs based on interaction of objects. ■ Some of the key programming techniques, such as inheritance and polymorphism, can be challenging to comprehend initially. ❖ Larger program size: Object-oriented programs typically involve more lines of code than procedural programs. OOP DISADVANTAGES
  • 17. ❖ Slower programs: Object-oriented programs are typically slower than procedure-based programs, as they typically require more instructions to be executed. ❖ Not suitable for all types of problems: There are problems that lend themselves well to functional-programming style, logic-programming style, or procedure-based programming style, and applying object-oriented programming in those situations will not result in efficient programs OOP DISADVANTAGES
  • 18. ❖ User interface design such as windows, menu ,… ❖ Real Time Systems ❖ Simulation and Modeling ❖ Object oriented databases ❖ AI and Expert System ❖ Neural Networks and parallel programming ❖ Decision support and office automation system OOP APPLICATIONS