SlideShare a Scribd company logo
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
THINKING OBJECT-ORIENTED
Muhammad Adil Raja
Roaming Researchers, Inc.
cbnd
April 7, 2015
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
OUTLINE I
1 INTRODUCTION
2 WHY IS OOP POLULAR?
3 MAIN CONCEPTS
4 COMPUTATION AS SIMULATION
5 MORE IDEAS
6 REFERENCES
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
INTRODUCTION I
What is OOP?
A revolutionary idea.
Unlike anything that has come in programming before.
OOP is an evolutionary step.
Based on the earlier programming abstractions.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
WHY IS OOP POLULAR? I
Scalability โ€“ from simplest of problems to the most
complex.
Provides and abstraction that resonates with
techniques people use to solve problems in their daily
lives.
Libraries assist in code reusability.
Addresses the software crisis.
Our imaginations and the tasks we would like to solve
with computers outstrips our abilities.
A new paradigm.
Structure for scienti๏ฌc revolutions.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
MAIN CONCEPTS I
Everything is an object.
Computation is performed by objects communicating
with each other, requesting that other objects perform
actions.
Objects communicate by sending and receiving
messages.
A message is a request for action bundled with
whatever arguments may be necessary to complete the
task.
Each object has its own memory, which consists of
other objects.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
MAIN CONCEPTS II
Every object is an instance of a class. A class simply
represents a grouping of similar objects, such as
integer or lists.
Classes are organized into a singly rooted tree
structure, called the inheritance hierarchy.
Memory and behavior associated with instances of a
class are automatically available. to any class
associated with a descendant in this tree structure.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
COMPUTATION AS SIMULATION I
Your world-view is that everything in the universe can
be seen as an object.
Through messages you can get those objects to
communicate with each other.
As you design the various objects and their interplay
with each other, a nice simulation of the phenomenon
emerges.
As you implement all the stuff together, you can run this
simulation as a computation.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
MORE IDEAS I
OOP is a new way of thinking about the process of
decomposing problems and developing programming
solutions.
OOP is not simply a few new features added to
programming languages.
OOP views a program as a collection of loosely
connected agents, termed objects.
Each object is responsible for speci๏ฌc tasks.
It is by the interaction of objects that computation
proceeds.
In a certain sense, therefore, programming is nothing
more or less than the simulation of a model universe.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
MORE IDEAS II
An object is an encapsulation of state (data values) and
behavior (operations).
So an object is in many ways similar to a special
purpose computer.
The behavior of objects is dictated by the object class.
Every object is an instance of some class.
All instances of the same class will behave in a similar
fashion.
This means that they would invoke the same method in
response to a similar request.
An object will exhibit its behavior by invoking a method
(similar to executing a procedure) in response to a
message.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
MORE IDEAS III
The interpretation of the message (that is, the speci๏ฌc
method used) is decided by the object and may differ
from one class of objects to another.
Classes can be linked to each other by means of the
notion of inheritance.
Using inheritance, classes are organized into a
hierarchical inheritance tree.
Data and behavior associated with classes higher in
the tree can also be accessed and used by classes
lower in the tree.
Such classes are said to inherit their behavior from the
parent classes.
Designing an object oriented program is like organizing
a community of individuals.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
MORE IDEAS IV
Each member of the community is given certain
responsibilities.
The achievement of the goals for the community as a
whole come about through the work of each member,
and the interactions of members with each other.
By reducing the interdependency among software
components, object-oriented programming permits the
development of reusable software systems.
Such components can be created and tested as
independent units, in isolation from other portions of a
software application.
Reusable software components permit the programmer
to deal with problems on a higher level abstraction.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
MORE IDEAS V
We can de๏ฌne and manipulate objects simply in terms
of the messages they understand and a description of
the tasks they perform.
We can do all of this by ignoring implementation details.
Muhammad Adil Raja Thinking Object-Oriented
Thinking
Object-
Oriented
Muhammad
Adil Raja
Introduction
Why is OOP
Polular?
Main
Concepts
Computation
as Simulation
More Ideas
References
REFERENCES I
An Introduction to Object Oriented Programming,
Timothy Budd.
Muhammad Adil Raja Thinking Object-Oriented

More Related Content

Similar to Thinking Object-Oriented

Oop's
Oop'sOop's
Oop's
JatinSaini84
ย 
OOPs-Interview-Questions.pdf
OOPs-Interview-Questions.pdfOOPs-Interview-Questions.pdf
OOPs-Interview-Questions.pdf
Samir Paul
ย 
Object-Oriented Programming in Real world Applications
Object-Oriented Programming in Real world ApplicationsObject-Oriented Programming in Real world Applications
Object-Oriented Programming in Real world Applications
MehmoodHasnain
ย 
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
AALIM MUHAMMED SALEGH COLLEGE OF ENGINEERING
ย 
Developing a digital mindset - recording
Developing a digital mindset - recordingDeveloping a digital mindset - recording
Developing a digital mindset - recording
Sprout Labs
ย 
Developing solid applications
Developing solid applicationsDeveloping solid applications
Developing solid applications
Nilesh Bangar
ย 
Object-Oriented Design
Object-Oriented DesignObject-Oriented Design
Object-Oriented Design
adil raja
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
Maheshrao929885
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
krutika95
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
aishwarya202897
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
prabhakaranIyer
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
Akash553872
ย 
Java object oriented programming concepts - Brainsmartlabs
Java object oriented programming concepts - BrainsmartlabsJava object oriented programming concepts - Brainsmartlabs
Java object oriented programming concepts - Brainsmartlabs
brainsmartlabsedu
ย 
How AI is transforming learning
How AI is transforming learningHow AI is transforming learning
How AI is transforming learning
Sprout Labs
ย 
1. oop with c++ get 410 day 1
1. oop with c++ get 410   day 11. oop with c++ get 410   day 1
1. oop with c++ get 410 day 1
Mukul kumar Neal
ย 
Object And Oriented Programing ( Oop ) Languages
Object And Oriented Programing ( Oop ) LanguagesObject And Oriented Programing ( Oop ) Languages
Object And Oriented Programing ( Oop ) Languages
Jessica Deakin
ย 
Lecture_1___Introduction_to_OOP.pdf.pdf
Lecture_1___Introduction_to_OOP.pdf.pdfLecture_1___Introduction_to_OOP.pdf.pdf
Lecture_1___Introduction_to_OOP.pdf.pdf
AngelaClarito1
ย 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
Sandeep Kumar Singh
ย 
Prerequisites of AI Techniques Making Robot To Perform Task With Human (autos...
Prerequisites of AI Techniques Making Robot To Perform Task With Human (autos...Prerequisites of AI Techniques Making Robot To Perform Task With Human (autos...
Prerequisites of AI Techniques Making Robot To Perform Task With Human (autos...
ejaruuday
ย 
chapter-6-oops.pdf
chapter-6-oops.pdfchapter-6-oops.pdf
chapter-6-oops.pdf
study material
ย 

Similar to Thinking Object-Oriented (20)

Oop's
Oop'sOop's
Oop's
ย 
OOPs-Interview-Questions.pdf
OOPs-Interview-Questions.pdfOOPs-Interview-Questions.pdf
OOPs-Interview-Questions.pdf
ย 
Object-Oriented Programming in Real world Applications
Object-Oriented Programming in Real world ApplicationsObject-Oriented Programming in Real world Applications
Object-Oriented Programming in Real world Applications
ย 
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
ย 
Developing a digital mindset - recording
Developing a digital mindset - recordingDeveloping a digital mindset - recording
Developing a digital mindset - recording
ย 
Developing solid applications
Developing solid applicationsDeveloping solid applications
Developing solid applications
ย 
Object-Oriented Design
Object-Oriented DesignObject-Oriented Design
Object-Oriented Design
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
ย 
OOPs concepts.ppt
OOPs concepts.pptOOPs concepts.ppt
OOPs concepts.ppt
ย 
Java object oriented programming concepts - Brainsmartlabs
Java object oriented programming concepts - BrainsmartlabsJava object oriented programming concepts - Brainsmartlabs
Java object oriented programming concepts - Brainsmartlabs
ย 
How AI is transforming learning
How AI is transforming learningHow AI is transforming learning
How AI is transforming learning
ย 
1. oop with c++ get 410 day 1
1. oop with c++ get 410   day 11. oop with c++ get 410   day 1
1. oop with c++ get 410 day 1
ย 
Object And Oriented Programing ( Oop ) Languages
Object And Oriented Programing ( Oop ) LanguagesObject And Oriented Programing ( Oop ) Languages
Object And Oriented Programing ( Oop ) Languages
ย 
Lecture_1___Introduction_to_OOP.pdf.pdf
Lecture_1___Introduction_to_OOP.pdf.pdfLecture_1___Introduction_to_OOP.pdf.pdf
Lecture_1___Introduction_to_OOP.pdf.pdf
ย 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
ย 
Prerequisites of AI Techniques Making Robot To Perform Task With Human (autos...
Prerequisites of AI Techniques Making Robot To Perform Task With Human (autos...Prerequisites of AI Techniques Making Robot To Perform Task With Human (autos...
Prerequisites of AI Techniques Making Robot To Perform Task With Human (autos...
ย 
chapter-6-oops.pdf
chapter-6-oops.pdfchapter-6-oops.pdf
chapter-6-oops.pdf
ย 

More from adil raja

ANNs.pdf
ANNs.pdfANNs.pdf
ANNs.pdf
adil raja
ย 
A Software Requirements Specification
A Software Requirements SpecificationA Software Requirements Specification
A Software Requirements Specification
adil raja
ย 
NUAV - A Testbed for Development of Autonomous Unmanned Aerial Vehicles
NUAV - A Testbed for Development of Autonomous Unmanned Aerial VehiclesNUAV - A Testbed for Development of Autonomous Unmanned Aerial Vehicles
NUAV - A Testbed for Development of Autonomous Unmanned Aerial Vehicles
adil raja
ย 
DevOps Demystified
DevOps DemystifiedDevOps Demystified
DevOps Demystified
adil raja
ย 
On Research (And Development)
On Research (And Development)On Research (And Development)
On Research (And Development)
adil raja
ย 
Simulators as Drivers of Cutting Edge Research
Simulators as Drivers of Cutting Edge ResearchSimulators as Drivers of Cutting Edge Research
Simulators as Drivers of Cutting Edge Research
adil raja
ย 
The Knock Knock Protocol
The Knock Knock ProtocolThe Knock Knock Protocol
The Knock Knock Protocol
adil raja
ย 
File Transfer Through Sockets
File Transfer Through SocketsFile Transfer Through Sockets
File Transfer Through Sockets
adil raja
ย 
Remote Command Execution
Remote Command ExecutionRemote Command Execution
Remote Command Execution
adil raja
ย 
Thesis
ThesisThesis
Thesis
adil raja
ย 
CMM Level 3 Assessment of Xavor Pakistan
CMM Level 3 Assessment of Xavor PakistanCMM Level 3 Assessment of Xavor Pakistan
CMM Level 3 Assessment of Xavor Pakistan
adil raja
ย 
Data Warehousing
Data WarehousingData Warehousing
Data Warehousing
adil raja
ย 
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
adil raja
ย 
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
adil raja
ย 
Real-Time Non-Intrusive Speech Quality Estimation for VoIP
Real-Time Non-Intrusive Speech Quality Estimation for VoIPReal-Time Non-Intrusive Speech Quality Estimation for VoIP
Real-Time Non-Intrusive Speech Quality Estimation for VoIP
adil raja
ย 
VoIP
VoIPVoIP
VoIP
adil raja
ย 
ULMAN GUI Specifications
ULMAN GUI SpecificationsULMAN GUI Specifications
ULMAN GUI Specifications
adil raja
ย 
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
adil raja
ย 
ULMAN-GUI
ULMAN-GUIULMAN-GUI
ULMAN-GUI
adil raja
ย 
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
adil raja
ย 

More from adil raja (20)

ANNs.pdf
ANNs.pdfANNs.pdf
ANNs.pdf
ย 
A Software Requirements Specification
A Software Requirements SpecificationA Software Requirements Specification
A Software Requirements Specification
ย 
NUAV - A Testbed for Development of Autonomous Unmanned Aerial Vehicles
NUAV - A Testbed for Development of Autonomous Unmanned Aerial VehiclesNUAV - A Testbed for Development of Autonomous Unmanned Aerial Vehicles
NUAV - A Testbed for Development of Autonomous Unmanned Aerial Vehicles
ย 
DevOps Demystified
DevOps DemystifiedDevOps Demystified
DevOps Demystified
ย 
On Research (And Development)
On Research (And Development)On Research (And Development)
On Research (And Development)
ย 
Simulators as Drivers of Cutting Edge Research
Simulators as Drivers of Cutting Edge ResearchSimulators as Drivers of Cutting Edge Research
Simulators as Drivers of Cutting Edge Research
ย 
The Knock Knock Protocol
The Knock Knock ProtocolThe Knock Knock Protocol
The Knock Knock Protocol
ย 
File Transfer Through Sockets
File Transfer Through SocketsFile Transfer Through Sockets
File Transfer Through Sockets
ย 
Remote Command Execution
Remote Command ExecutionRemote Command Execution
Remote Command Execution
ย 
Thesis
ThesisThesis
Thesis
ย 
CMM Level 3 Assessment of Xavor Pakistan
CMM Level 3 Assessment of Xavor PakistanCMM Level 3 Assessment of Xavor Pakistan
CMM Level 3 Assessment of Xavor Pakistan
ย 
Data Warehousing
Data WarehousingData Warehousing
Data Warehousing
ย 
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
ย 
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
Implementation of a Non-Intrusive Speech Quality Assessment Tool on a Mid-Net...
ย 
Real-Time Non-Intrusive Speech Quality Estimation for VoIP
Real-Time Non-Intrusive Speech Quality Estimation for VoIPReal-Time Non-Intrusive Speech Quality Estimation for VoIP
Real-Time Non-Intrusive Speech Quality Estimation for VoIP
ย 
VoIP
VoIPVoIP
VoIP
ย 
ULMAN GUI Specifications
ULMAN GUI SpecificationsULMAN GUI Specifications
ULMAN GUI Specifications
ย 
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
ย 
ULMAN-GUI
ULMAN-GUIULMAN-GUI
ULMAN-GUI
ย 
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
Modeling the Effect of Packet Loss on Speech Quality: Genetic Programming Bas...
ย 

Recently uploaded

220711130082 Srabanti Bag Internet Resources For Natural Science
220711130082 Srabanti Bag Internet Resources For Natural Science220711130082 Srabanti Bag Internet Resources For Natural Science
220711130082 Srabanti Bag Internet Resources For Natural Science
Kalna College
ย 
Accounting for Restricted Grants When and How To Record Properly
Accounting for Restricted Grants  When and How To Record ProperlyAccounting for Restricted Grants  When and How To Record Properly
Accounting for Restricted Grants When and How To Record Properly
TechSoup
ย 
INTRODUCTION TO HOSPITALS & AND ITS ORGANIZATION
INTRODUCTION TO HOSPITALS & AND ITS ORGANIZATION INTRODUCTION TO HOSPITALS & AND ITS ORGANIZATION
INTRODUCTION TO HOSPITALS & AND ITS ORGANIZATION
ShwetaGawande8
ย 
220711130088 Sumi Basak Virtual University EPC 3.pptx
220711130088 Sumi Basak Virtual University EPC 3.pptx220711130088 Sumi Basak Virtual University EPC 3.pptx
220711130088 Sumi Basak Virtual University EPC 3.pptx
Kalna College
ย 
THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...
THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...
THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...
indexPub
ย 
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptxRESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
zuzanka
ย 
A Free 200-Page eBook ~ Brain and Mind Exercise.pptx
A Free 200-Page eBook ~ Brain and Mind Exercise.pptxA Free 200-Page eBook ~ Brain and Mind Exercise.pptx
A Free 200-Page eBook ~ Brain and Mind Exercise.pptx
OH TEIK BIN
ย 
Information and Communication Technology in Education
Information and Communication Technology in EducationInformation and Communication Technology in Education
Information and Communication Technology in Education
MJDuyan
ย 
Standardized tool for Intelligence test.
Standardized tool for Intelligence test.Standardized tool for Intelligence test.
Standardized tool for Intelligence test.
deepaannamalai16
ย 
220711130100 udita Chakraborty Aims and objectives of national policy on inf...
220711130100 udita Chakraborty  Aims and objectives of national policy on inf...220711130100 udita Chakraborty  Aims and objectives of national policy on inf...
220711130100 udita Chakraborty Aims and objectives of national policy on inf...
Kalna College
ย 
A Visual Guide to 1 Samuel | A Tale of Two Hearts
A Visual Guide to 1 Samuel | A Tale of Two HeartsA Visual Guide to 1 Samuel | A Tale of Two Hearts
A Visual Guide to 1 Samuel | A Tale of Two Hearts
Steve Thomason
ย 
Skimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S EliotSkimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S Eliot
nitinpv4ai
ย 
Educational Technology in the Health Sciences
Educational Technology in the Health SciencesEducational Technology in the Health Sciences
Educational Technology in the Health Sciences
Iris Thiele Isip-Tan
ย 
CIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdfCIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdf
blueshagoo1
ย 
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
ImMuslim
ย 
Simple-Present-Tense xxxxxxxxxxxxxxxxxxx
Simple-Present-Tense xxxxxxxxxxxxxxxxxxxSimple-Present-Tense xxxxxxxxxxxxxxxxxxx
Simple-Present-Tense xxxxxxxxxxxxxxxxxxx
RandolphRadicy
ย 
Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...
PsychoTech Services
ย 
skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)
Mohammad Al-Dhahabi
ย 
Ch-4 Forest Society and colonialism 2.pdf
Ch-4 Forest Society and colonialism 2.pdfCh-4 Forest Society and colonialism 2.pdf
Ch-4 Forest Society and colonialism 2.pdf
lakshayrojroj
ย 
Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)
nitinpv4ai
ย 

Recently uploaded (20)

220711130082 Srabanti Bag Internet Resources For Natural Science
220711130082 Srabanti Bag Internet Resources For Natural Science220711130082 Srabanti Bag Internet Resources For Natural Science
220711130082 Srabanti Bag Internet Resources For Natural Science
ย 
Accounting for Restricted Grants When and How To Record Properly
Accounting for Restricted Grants  When and How To Record ProperlyAccounting for Restricted Grants  When and How To Record Properly
Accounting for Restricted Grants When and How To Record Properly
ย 
INTRODUCTION TO HOSPITALS & AND ITS ORGANIZATION
INTRODUCTION TO HOSPITALS & AND ITS ORGANIZATION INTRODUCTION TO HOSPITALS & AND ITS ORGANIZATION
INTRODUCTION TO HOSPITALS & AND ITS ORGANIZATION
ย 
220711130088 Sumi Basak Virtual University EPC 3.pptx
220711130088 Sumi Basak Virtual University EPC 3.pptx220711130088 Sumi Basak Virtual University EPC 3.pptx
220711130088 Sumi Basak Virtual University EPC 3.pptx
ย 
THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...
THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...
THE SACRIFICE HOW PRO-PALESTINE PROTESTS STUDENTS ARE SACRIFICING TO CHANGE T...
ย 
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptxRESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
ย 
A Free 200-Page eBook ~ Brain and Mind Exercise.pptx
A Free 200-Page eBook ~ Brain and Mind Exercise.pptxA Free 200-Page eBook ~ Brain and Mind Exercise.pptx
A Free 200-Page eBook ~ Brain and Mind Exercise.pptx
ย 
Information and Communication Technology in Education
Information and Communication Technology in EducationInformation and Communication Technology in Education
Information and Communication Technology in Education
ย 
Standardized tool for Intelligence test.
Standardized tool for Intelligence test.Standardized tool for Intelligence test.
Standardized tool for Intelligence test.
ย 
220711130100 udita Chakraborty Aims and objectives of national policy on inf...
220711130100 udita Chakraborty  Aims and objectives of national policy on inf...220711130100 udita Chakraborty  Aims and objectives of national policy on inf...
220711130100 udita Chakraborty Aims and objectives of national policy on inf...
ย 
A Visual Guide to 1 Samuel | A Tale of Two Hearts
A Visual Guide to 1 Samuel | A Tale of Two HeartsA Visual Guide to 1 Samuel | A Tale of Two Hearts
A Visual Guide to 1 Samuel | A Tale of Two Hearts
ย 
Skimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S EliotSkimbleshanks-The-Railway-Cat by T S Eliot
Skimbleshanks-The-Railway-Cat by T S Eliot
ย 
Educational Technology in the Health Sciences
Educational Technology in the Health SciencesEducational Technology in the Health Sciences
Educational Technology in the Health Sciences
ย 
CIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdfCIS 4200-02 Group 1 Final Project Report (1).pdf
CIS 4200-02 Group 1 Final Project Report (1).pdf
ย 
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
Geography as a Discipline Chapter 1 __ Class 11 Geography NCERT _ Class Notes...
ย 
Simple-Present-Tense xxxxxxxxxxxxxxxxxxx
Simple-Present-Tense xxxxxxxxxxxxxxxxxxxSimple-Present-Tense xxxxxxxxxxxxxxxxxxx
Simple-Present-Tense xxxxxxxxxxxxxxxxxxx
ย 
Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...
ย 
skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)skeleton System.pdf (skeleton system wow)
skeleton System.pdf (skeleton system wow)
ย 
Ch-4 Forest Society and colonialism 2.pdf
Ch-4 Forest Society and colonialism 2.pdfCh-4 Forest Society and colonialism 2.pdf
Ch-4 Forest Society and colonialism 2.pdf
ย 
Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)Oliver Asks for More by Charles Dickens (9)
Oliver Asks for More by Charles Dickens (9)
ย 

Thinking Object-Oriented

  • 1. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References THINKING OBJECT-ORIENTED Muhammad Adil Raja Roaming Researchers, Inc. cbnd April 7, 2015 Muhammad Adil Raja Thinking Object-Oriented
  • 2. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References OUTLINE I 1 INTRODUCTION 2 WHY IS OOP POLULAR? 3 MAIN CONCEPTS 4 COMPUTATION AS SIMULATION 5 MORE IDEAS 6 REFERENCES Muhammad Adil Raja Thinking Object-Oriented
  • 3. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References INTRODUCTION I What is OOP? A revolutionary idea. Unlike anything that has come in programming before. OOP is an evolutionary step. Based on the earlier programming abstractions. Muhammad Adil Raja Thinking Object-Oriented
  • 4. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References WHY IS OOP POLULAR? I Scalability โ€“ from simplest of problems to the most complex. Provides and abstraction that resonates with techniques people use to solve problems in their daily lives. Libraries assist in code reusability. Addresses the software crisis. Our imaginations and the tasks we would like to solve with computers outstrips our abilities. A new paradigm. Structure for scienti๏ฌc revolutions. Muhammad Adil Raja Thinking Object-Oriented
  • 5. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References MAIN CONCEPTS I Everything is an object. Computation is performed by objects communicating with each other, requesting that other objects perform actions. Objects communicate by sending and receiving messages. A message is a request for action bundled with whatever arguments may be necessary to complete the task. Each object has its own memory, which consists of other objects. Muhammad Adil Raja Thinking Object-Oriented
  • 6. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References MAIN CONCEPTS II Every object is an instance of a class. A class simply represents a grouping of similar objects, such as integer or lists. Classes are organized into a singly rooted tree structure, called the inheritance hierarchy. Memory and behavior associated with instances of a class are automatically available. to any class associated with a descendant in this tree structure. Muhammad Adil Raja Thinking Object-Oriented
  • 7. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References COMPUTATION AS SIMULATION I Your world-view is that everything in the universe can be seen as an object. Through messages you can get those objects to communicate with each other. As you design the various objects and their interplay with each other, a nice simulation of the phenomenon emerges. As you implement all the stuff together, you can run this simulation as a computation. Muhammad Adil Raja Thinking Object-Oriented
  • 8. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References MORE IDEAS I OOP is a new way of thinking about the process of decomposing problems and developing programming solutions. OOP is not simply a few new features added to programming languages. OOP views a program as a collection of loosely connected agents, termed objects. Each object is responsible for speci๏ฌc tasks. It is by the interaction of objects that computation proceeds. In a certain sense, therefore, programming is nothing more or less than the simulation of a model universe. Muhammad Adil Raja Thinking Object-Oriented
  • 9. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References MORE IDEAS II An object is an encapsulation of state (data values) and behavior (operations). So an object is in many ways similar to a special purpose computer. The behavior of objects is dictated by the object class. Every object is an instance of some class. All instances of the same class will behave in a similar fashion. This means that they would invoke the same method in response to a similar request. An object will exhibit its behavior by invoking a method (similar to executing a procedure) in response to a message. Muhammad Adil Raja Thinking Object-Oriented
  • 10. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References MORE IDEAS III The interpretation of the message (that is, the speci๏ฌc method used) is decided by the object and may differ from one class of objects to another. Classes can be linked to each other by means of the notion of inheritance. Using inheritance, classes are organized into a hierarchical inheritance tree. Data and behavior associated with classes higher in the tree can also be accessed and used by classes lower in the tree. Such classes are said to inherit their behavior from the parent classes. Designing an object oriented program is like organizing a community of individuals. Muhammad Adil Raja Thinking Object-Oriented
  • 11. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References MORE IDEAS IV Each member of the community is given certain responsibilities. The achievement of the goals for the community as a whole come about through the work of each member, and the interactions of members with each other. By reducing the interdependency among software components, object-oriented programming permits the development of reusable software systems. Such components can be created and tested as independent units, in isolation from other portions of a software application. Reusable software components permit the programmer to deal with problems on a higher level abstraction. Muhammad Adil Raja Thinking Object-Oriented
  • 12. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References MORE IDEAS V We can de๏ฌne and manipulate objects simply in terms of the messages they understand and a description of the tasks they perform. We can do all of this by ignoring implementation details. Muhammad Adil Raja Thinking Object-Oriented
  • 13. Thinking Object- Oriented Muhammad Adil Raja Introduction Why is OOP Polular? Main Concepts Computation as Simulation More Ideas References REFERENCES I An Introduction to Object Oriented Programming, Timothy Budd. Muhammad Adil Raja Thinking Object-Oriented