Upload
adil-raja
View
177
Download
1
Embed Size (px)
Citation preview
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
THINKING OBJECT-ORIENTED
Muhammad Adil Raja
Roaming Researchers, Inc.
cbnd
April 7, 2015
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas 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
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas 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
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
WHY IS OOP POLULAR? I
Scalability – from simplest of problems to the mostcomplex.Provides and abstraction that resonates withtechniques people use to solve problems in their dailylives.Libraries assist in code reusability.Addresses the software crisis.Our imaginations and the tasks we would like to solvewith computers outstrips our abilities.A new paradigm.Structure for scientific revolutions.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
MAIN CONCEPTS I
Everything is an object.Computation is performed by objects communicatingwith each other, requesting that other objects performactions.Objects communicate by sending and receivingmessages.A message is a request for action bundled withwhatever arguments may be necessary to complete thetask.Each object has its own memory, which consists ofother objects.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
MAIN CONCEPTS II
Every object is an instance of a class. A class simplyrepresents a grouping of similar objects, such asinteger or lists.
Classes are organized into a singly rooted treestructure, called the inheritance hierarchy.
Memory and behavior associated with instances of aclass are automatically available. to any classassociated with a descendant in this tree structure.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
COMPUTATION AS SIMULATION I
Your world-view is that everything in the universe canbe seen as an object.
Through messages you can get those objects tocommunicate with each other.
As you design the various objects and their interplaywith each other, a nice simulation of the phenomenonemerges.
As you implement all the stuff together, you can run thissimulation as a computation.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
MORE IDEAS I
OOP is a new way of thinking about the process ofdecomposing problems and developing programmingsolutions.OOP is not simply a few new features added toprogramming languages.OOP views a program as a collection of looselyconnected agents, termed objects.Each object is responsible for specific tasks.It is by the interaction of objects that computationproceeds.In a certain sense, therefore, programming is nothingmore or less than the simulation of a model universe.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
MORE IDEAS II
An object is an encapsulation of state (data values) andbehavior (operations).So an object is in many ways similar to a specialpurpose 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 similarfashion.This means that they would invoke the same method inresponse to a similar request.An object will exhibit its behavior by invoking a method(similar to executing a procedure) in response to amessage.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
MORE IDEAS III
The interpretation of the message (that is, the specificmethod used) is decided by the object and may differfrom one class of objects to another.Classes can be linked to each other by means of thenotion of inheritance.Using inheritance, classes are organized into ahierarchical inheritance tree.Data and behavior associated with classes higher inthe tree can also be accessed and used by classeslower in the tree.Such classes are said to inherit their behavior from theparent classes.Designing an object oriented program is like organizinga community of individuals.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
MORE IDEAS IV
Each member of the community is given certainresponsibilities.The achievement of the goals for the community as awhole come about through the work of each member,and the interactions of members with each other.By reducing the interdependency among softwarecomponents, object-oriented programming permits thedevelopment of reusable software systems.Such components can be created and tested asindependent units, in isolation from other portions of asoftware application.Reusable software components permit the programmerto deal with problems on a higher level abstraction.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
MORE IDEAS V
We can define and manipulate objects simply in termsof the messages they understand and a description ofthe tasks they perform.
We can do all of this by ignoring implementation details.
Muhammad Adil Raja Thinking Object-Oriented
ThinkingObject-
Oriented
MuhammadAdil Raja
Introduction
Why is OOPPolular?
MainConcepts
Computationas Simulation
More Ideas
References
REFERENCES I
An Introduction to Object Oriented Programming,Timothy Budd.
Muhammad Adil Raja Thinking Object-Oriented