what is object-oriented?
DESCRIPTION
What is Object-Oriented?. Organization of software as a collection of discreet objects that incorporate both data structure and behavior. Characteristics of Object-Oriented Approach. IDENTITY CLASSIFICATION POLYMORHISM INHERITANCE. Characteristics of Object-Oriented Approach. IDENTITY - PowerPoint PPT PresentationTRANSCRIPT
What is Object-Oriented?
Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
Characteristics of Object-Oriented Approach
IDENTITY CLASSIFICATION POLYMORHISM INHERITANCE
Characteristics of Object-Oriented Approach
IDENTITY
Data is quantified into discrete, distinguishable entities called objects.
Characteristics of Object-Oriented Approach
Classification
Objects with the same data structure and behavior are grouped into a class.
What is a Class?
A Class is an abstraction that describes properties important to an application.
Each object is an instance of its class.
Classification of Object Oriented Approach
Polymorphism The same operation may behave
differently on differently on different classes.
A specific implementation of an operation by a class is called method.
Classification of Object Oriented Approach
Inheritance Sharing of attributes and operations
among classes based on hierarchical relationship.
A class can be refined into sub-classes. Subclass inherits all the properties of its
superclass and can add own unique properties.
Object Modeling Techniques(OMT)
A methodology for representing the object oriented concepts and development.
Building a model of an application domain and then adding implementation details to it during the design of a system.
STAGES OF OMT
Analysis System Design Object Design Implementation
STAGES OF OMT
AnalysisA concise, precise abstraction of what the desired system must do, not how it will be done.
STAGES OF OMT
System DesignThe target system is organized into subsystems based on both the analysis structure and the proposed architecture.
STAGES OF OMT
Object DesignA design model based on the analysis model but containing implementation details.
STAGES OF OMT
ImplementationObject classes and relationships developed during object design are translated into a particular programming language, database or hardware implementation.
Models used by OMT for System Description
Object Model Dynamic Model Functional Model
Models used by OMT for System Description
Object Model Describes the static structure of the
objects in a system and their relationships.
Contains object diagrams, a graph whose nodes are object classes and whose arcs are relationships among classes.
Models used by OMT for System Description
Functional Model Describes the data value transformations
within a system. Contains data flow diagram, a graph
whose nodes are processes and whose arcs are data flows.
Models used by OMT for System Description
Dynamic Model Used to specify and implement the
control aspects of a system. Contains state diagram, a graph whose
nodes are states and whose arcs are transitions between states caused by events.
Object Oriented Themes
ABSTRACTION ENCAPSULATION COMBINING DATA AND
BEHAVIOUR SHARING
Object Oriented Themes
ABSTRACTION Focus on what an object is and does,
before deciding upon the implementation issues.
Allows the same model to be used at different stages of OMT.
Object Oriented Themes
ENCAPSULATION Separation of external aspects of an
object, accessible to external environment, from internal implementation details of the object.
It makes the object independent and immune to external changes in implementation.
Object Oriented Themes
Combining Data and behavior The caller of an operation need not
consider how many implementations of a given operation exists.
Object Oriented Themes
Sharing Object-oriented development allows
information to be shared within application.
It also offers the prospect of reuse of the code and design in future applications.
Difference from Traditional Methods
Places greater emphasis on data structure and lesser on procedural structure.
Adds the concept of class-dependent behavior.