SlideShare a Scribd company logo
1 of 29
Download to read offline
Impact of Object-Oriented Concept
in Programming Languages
SHIVAM JOSHI
•B.Tech, IT Department( 6th semester )
1
CONTENTS
 INTRODUCTION TO OOPS
 HISTORY OF OOPS
 APPLICATION OF OOPS
 OBJECT ORIENTED LANGUAGES
 CONCEPT OF CLASSES AND OBJECTS
 DATA HIDING
 ABSTRACTION
 ENCAPSULATION
 INHERITANCE
 POLYMORPHISM
 IMPACT OF LANGUAGES NOT USING OOPS
 CONCLUSION
 REFERENCES
2
INTRODUCTION TO OOPS
A Program is a set of instructions to be executed by the
machine. A program takes input in the form of data, processes
it, and generates result. OOP makes the program length short
and increases its reusability.
An object oriented programming language is a high level
language which is legible for people and needs translation for
the machine (compiler or interpreter).
In the program design, bottom-up approach is followed.
Programs are organized around objects and grouped in classes.
Objects can interact through functions.
Design can be reused.
3
HISTORY OF OBJECT-ORIENTED
PROGRAMMING
 SIMULA I (1962-65) and SIMULA 67 (1967) were the first
two object-oriented languages.
 Developed at the Norwegian Computing Center, Oslo,
Norway by Ole-Johan Dahl and Kristen Nygaard .
 SIMULA 67 introduced most of the key concepts of object-
oriented programming: objects and classes, subclasses
(“inheritance”), virtual procedures.
4
APPLICATIONS OF OOPS
OOP has become one of the programming buzz words today.
The promising areas of application of OOP include:
1. Real-time system,
2. Simulation and modelling,
3. Object-oriented data bases,
4. Hypertext and Hypermedia,
5. AI and expert systems,
6. Neural networks and parallel programming,
7. Decision support and office automation systems, etc…
5
OBJECT ORIENTED LANGUAGES
C++ ( developed by Bjarne Stroustrup )
C# ( developed by Microsoft )
Eiffel ( developed by Bertrand Meyer and Eiffel Software)
Falcon ( developed by Falcon Committee )
Java ( developed by James Gosling )
Perl since v5 ( developed by Larry Wall )
PHP5 ( developed by The PHP Development Team, Zend
Technologies)
Python ( developed by Python Software Foundation ) , etc…
6
Concept of Class and Object
 “Class” refers to a blueprint. It define variables and methods,
the object supports. It is the basic unit of Encapsulation. It is
also defined as the Collection of a similar types of objects.
 “Object” is an instance(Properties) of a class. Each object has
a class which defines its data and behavior.
7
EXAMPLE OF AN OBJECT8
EXAMPLE OF A CLASS9
DATA HIDING
 Data Hiding means to hide our internal data such that outside
person can’t access our internal data directly or our internal
data should not go out directly. After verification only, the
internal data can be accessed.
Advantage : The main advantage of using Data Hiding is that
it makes the data secure, that is, security is achieved.
10
EXAMPLE
 To access our data stored in Google Drive, we need to
provide correct username and correct password.
11
ABSTRACTION
Abstraction means to hide internal implementation and just
highlighting the set of services necessary for the user.
Advantages :
1. Security,
2. Enhancement will become effortless,
3. Easiness is improved, and
4. Maintainability
12
EXAMPLE
In a mobile phone screen, the company highlights the set of
services they want without highlighting the internal
implementation.
13
ENCAPSULATION
Encapsulation means the process of binding data and
corresponding methods or behavior into a single unit.
Encapsulation is the combination of Data Hiding and
Abstraction.
Advantages :
1. Security can be achieved,
2. Maintainability of application is improved, and
3. Enhancement will become effortless
14
EXAMPLE ( In Java )15
INHERITANCE
Inheritance means that the newly created object can take on the
properties of existing objects. The class which allows its
properties to be inherited is called super class and the class
which inherits is called subclass.
There are different types of Inheritance provided by OOP
which are listed as follows:
1. Single Inheritance,
2. Multi-level Inheritance,
3. Multiple Inheritance,
16
INHERITANCE ( cont. )
4. Multipath Inheritance,
5. Hierarchical Inheritance, and
6. Hybrid Inheritance.
Advantage: The advantage of using Inheritance is
reusability of code.
17
EXAMPLE18
EXAMPLE ( In Java )19
POLYMORPHISM
“Poly”= Many, “Morphism”= forms
Polymorphism means one name but multiple forms.
Advantages :
1. Less code length, and
2. Flexibility
20
EXAMPLE
World
India China USA
Rajasthan New delhi Washington New york
21
EXAMPLE ( In Java )22
3 PILLARS OF OOPS23
IMPACT OF LANGUAGES NOT USING
OOP
In old models, one part should be completed before the next
part. This creates a problem in design, particularly if errors
came up or requirements change.
The starting cost of building the system is high in old models.
Since the whole system needs to be designed at once. Thus,
leaving very little chance of adding functionality later.
Old models do not support reusability of code. So, the time and
cost of development is obviously more.
24
CONCLUSION
OOP is far better than old programming method, provides the
benefit of reusing code and easy maintenance of application.
It provides many features to the user which helps in decreasing
the workload and provides a broad way to build heavy
applications easily.
OOP provides security through Abstraction .
It provides easy enhancement.
Thus, OOP has a vital role in present scenario and its usage is
increasing in every programming module.
25
REFERENCES
1) Abadi, Martin; Cardelli, Luca (1996). A Theory of Objects.
Springer-Verlag New York, Inc.
2) Armstrong, Joe. In Coders at Work: Reflections on the Craft
of Programming. Peter Seibel, ed. Codersatwork.com.
3) Cardelli, Luca (1996). "Bad Engineering Properties of Object-
Oriented Languages".
4) Hoare, C. A. (Nov 1965). "Record Handling". ALGOL
Bulletin (21): 39–69. doi:10.1145/1061032.1061041.
26
REFERENCES ( cont. )
5) Holmevik, Jan Rune (1994). "Compiling Simula: A historical study
of technological genesis". IEEE Annals of the History of
Computing 16.
6) Jacobsen, Ivar; Magnus Christerson; PatrikJonsson; Gunnar
Overgaard (1992). Object Oriented Software Engineering.
Addison-Wesley ACM Press. pp. 43–69.
7) Kindler, E.; Krivy, I. (2011). Object-Oriented Simulation of
systems with sophisticated control. International Journal of
General Systems. pp. 313–343.
8) Lewis, John; Loftus, William (2008). Java Software Solutions
Foundations of Programming Design 6th ed. Pearson Education.
9) Potok, Thomas; MladenVouk; Andy Rindos (1999). "Productivity
Analysis of Object-Oriented Software Developed in a Commercial
Environment".
27
28
29

More Related Content

Similar to Object Oriented Programming

Similar to Object Oriented Programming (20)

the Concept of Object-Oriented Programming
the Concept of Object-Oriented Programmingthe Concept of Object-Oriented Programming
the Concept of Object-Oriented Programming
 
Bab satu
Bab satuBab satu
Bab satu
 
babsatu-140703233001-phpapp666666601.pdf
babsatu-140703233001-phpapp666666601.pdfbabsatu-140703233001-phpapp666666601.pdf
babsatu-140703233001-phpapp666666601.pdf
 
A Survey of Object Oriented Programming LanguagesMaya Hris.docx
A Survey of Object Oriented Programming LanguagesMaya Hris.docxA Survey of Object Oriented Programming LanguagesMaya Hris.docx
A Survey of Object Oriented Programming LanguagesMaya Hris.docx
 
Research paper
Research paperResearch paper
Research paper
 
OOPS_Unit_1
OOPS_Unit_1OOPS_Unit_1
OOPS_Unit_1
 
Unit 1 OOSE
Unit 1 OOSE Unit 1 OOSE
Unit 1 OOSE
 
INTRODUCTION TO JAVA
INTRODUCTION TO JAVAINTRODUCTION TO JAVA
INTRODUCTION TO JAVA
 
Chapter 04 object oriented programming
Chapter 04 object oriented programmingChapter 04 object oriented programming
Chapter 04 object oriented programming
 
Ah java-ppt2
Ah java-ppt2Ah java-ppt2
Ah java-ppt2
 
CS3391 -OOP -UNIT – I NOTES FINAL.pdf
CS3391 -OOP -UNIT – I  NOTES FINAL.pdfCS3391 -OOP -UNIT – I  NOTES FINAL.pdf
CS3391 -OOP -UNIT – I NOTES FINAL.pdf
 
1 intro
1 intro1 intro
1 intro
 
Benefits of encapsulation
Benefits of encapsulationBenefits of encapsulation
Benefits of encapsulation
 
c++session 1.pptx
c++session 1.pptxc++session 1.pptx
c++session 1.pptx
 
Sulthan's_JAVA_Material_for_B.Sc-CS.pdf
Sulthan's_JAVA_Material_for_B.Sc-CS.pdfSulthan's_JAVA_Material_for_B.Sc-CS.pdf
Sulthan's_JAVA_Material_for_B.Sc-CS.pdf
 
Basic concept of OOP's
Basic concept of OOP'sBasic concept of OOP's
Basic concept of OOP's
 
OODJ-MODULE 1.pptx
OODJ-MODULE 1.pptxOODJ-MODULE 1.pptx
OODJ-MODULE 1.pptx
 
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
 
JAVA PROGRAMMING
JAVA PROGRAMMING JAVA PROGRAMMING
JAVA PROGRAMMING
 
Birasa 1
Birasa 1Birasa 1
Birasa 1
 

Recently uploaded

High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...RajaP95
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingrknatarajan
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 

Recently uploaded (20)

High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
IMPLICATIONS OF THE ABOVE HOLISTIC UNDERSTANDING OF HARMONY ON PROFESSIONAL E...
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 

Object Oriented Programming

  • 1. Impact of Object-Oriented Concept in Programming Languages SHIVAM JOSHI •B.Tech, IT Department( 6th semester ) 1
  • 2. CONTENTS  INTRODUCTION TO OOPS  HISTORY OF OOPS  APPLICATION OF OOPS  OBJECT ORIENTED LANGUAGES  CONCEPT OF CLASSES AND OBJECTS  DATA HIDING  ABSTRACTION  ENCAPSULATION  INHERITANCE  POLYMORPHISM  IMPACT OF LANGUAGES NOT USING OOPS  CONCLUSION  REFERENCES 2
  • 3. INTRODUCTION TO OOPS A Program is a set of instructions to be executed by the machine. A program takes input in the form of data, processes it, and generates result. OOP makes the program length short and increases its reusability. An object oriented programming language is a high level language which is legible for people and needs translation for the machine (compiler or interpreter). In the program design, bottom-up approach is followed. Programs are organized around objects and grouped in classes. Objects can interact through functions. Design can be reused. 3
  • 4. HISTORY OF OBJECT-ORIENTED PROGRAMMING  SIMULA I (1962-65) and SIMULA 67 (1967) were the first two object-oriented languages.  Developed at the Norwegian Computing Center, Oslo, Norway by Ole-Johan Dahl and Kristen Nygaard .  SIMULA 67 introduced most of the key concepts of object- oriented programming: objects and classes, subclasses (“inheritance”), virtual procedures. 4
  • 5. APPLICATIONS OF OOPS OOP has become one of the programming buzz words today. The promising areas of application of OOP include: 1. Real-time system, 2. Simulation and modelling, 3. Object-oriented data bases, 4. Hypertext and Hypermedia, 5. AI and expert systems, 6. Neural networks and parallel programming, 7. Decision support and office automation systems, etc… 5
  • 6. OBJECT ORIENTED LANGUAGES C++ ( developed by Bjarne Stroustrup ) C# ( developed by Microsoft ) Eiffel ( developed by Bertrand Meyer and Eiffel Software) Falcon ( developed by Falcon Committee ) Java ( developed by James Gosling ) Perl since v5 ( developed by Larry Wall ) PHP5 ( developed by The PHP Development Team, Zend Technologies) Python ( developed by Python Software Foundation ) , etc… 6
  • 7. Concept of Class and Object  “Class” refers to a blueprint. It define variables and methods, the object supports. It is the basic unit of Encapsulation. It is also defined as the Collection of a similar types of objects.  “Object” is an instance(Properties) of a class. Each object has a class which defines its data and behavior. 7
  • 8. EXAMPLE OF AN OBJECT8
  • 9. EXAMPLE OF A CLASS9
  • 10. DATA HIDING  Data Hiding means to hide our internal data such that outside person can’t access our internal data directly or our internal data should not go out directly. After verification only, the internal data can be accessed. Advantage : The main advantage of using Data Hiding is that it makes the data secure, that is, security is achieved. 10
  • 11. EXAMPLE  To access our data stored in Google Drive, we need to provide correct username and correct password. 11
  • 12. ABSTRACTION Abstraction means to hide internal implementation and just highlighting the set of services necessary for the user. Advantages : 1. Security, 2. Enhancement will become effortless, 3. Easiness is improved, and 4. Maintainability 12
  • 13. EXAMPLE In a mobile phone screen, the company highlights the set of services they want without highlighting the internal implementation. 13
  • 14. ENCAPSULATION Encapsulation means the process of binding data and corresponding methods or behavior into a single unit. Encapsulation is the combination of Data Hiding and Abstraction. Advantages : 1. Security can be achieved, 2. Maintainability of application is improved, and 3. Enhancement will become effortless 14
  • 15. EXAMPLE ( In Java )15
  • 16. INHERITANCE Inheritance means that the newly created object can take on the properties of existing objects. The class which allows its properties to be inherited is called super class and the class which inherits is called subclass. There are different types of Inheritance provided by OOP which are listed as follows: 1. Single Inheritance, 2. Multi-level Inheritance, 3. Multiple Inheritance, 16
  • 17. INHERITANCE ( cont. ) 4. Multipath Inheritance, 5. Hierarchical Inheritance, and 6. Hybrid Inheritance. Advantage: The advantage of using Inheritance is reusability of code. 17
  • 19. EXAMPLE ( In Java )19
  • 20. POLYMORPHISM “Poly”= Many, “Morphism”= forms Polymorphism means one name but multiple forms. Advantages : 1. Less code length, and 2. Flexibility 20
  • 21. EXAMPLE World India China USA Rajasthan New delhi Washington New york 21
  • 22. EXAMPLE ( In Java )22
  • 23. 3 PILLARS OF OOPS23
  • 24. IMPACT OF LANGUAGES NOT USING OOP In old models, one part should be completed before the next part. This creates a problem in design, particularly if errors came up or requirements change. The starting cost of building the system is high in old models. Since the whole system needs to be designed at once. Thus, leaving very little chance of adding functionality later. Old models do not support reusability of code. So, the time and cost of development is obviously more. 24
  • 25. CONCLUSION OOP is far better than old programming method, provides the benefit of reusing code and easy maintenance of application. It provides many features to the user which helps in decreasing the workload and provides a broad way to build heavy applications easily. OOP provides security through Abstraction . It provides easy enhancement. Thus, OOP has a vital role in present scenario and its usage is increasing in every programming module. 25
  • 26. REFERENCES 1) Abadi, Martin; Cardelli, Luca (1996). A Theory of Objects. Springer-Verlag New York, Inc. 2) Armstrong, Joe. In Coders at Work: Reflections on the Craft of Programming. Peter Seibel, ed. Codersatwork.com. 3) Cardelli, Luca (1996). "Bad Engineering Properties of Object- Oriented Languages". 4) Hoare, C. A. (Nov 1965). "Record Handling". ALGOL Bulletin (21): 39–69. doi:10.1145/1061032.1061041. 26
  • 27. REFERENCES ( cont. ) 5) Holmevik, Jan Rune (1994). "Compiling Simula: A historical study of technological genesis". IEEE Annals of the History of Computing 16. 6) Jacobsen, Ivar; Magnus Christerson; PatrikJonsson; Gunnar Overgaard (1992). Object Oriented Software Engineering. Addison-Wesley ACM Press. pp. 43–69. 7) Kindler, E.; Krivy, I. (2011). Object-Oriented Simulation of systems with sophisticated control. International Journal of General Systems. pp. 313–343. 8) Lewis, John; Loftus, William (2008). Java Software Solutions Foundations of Programming Design 6th ed. Pearson Education. 9) Potok, Thomas; MladenVouk; Andy Rindos (1999). "Productivity Analysis of Object-Oriented Software Developed in a Commercial Environment". 27
  • 28. 28
  • 29. 29