230 likes | 430 Views
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
E N D
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 Analysis A concise, precise abstraction of what the desired system must do, not how it will be done.
STAGES OF OMT System Design The target system is organized into subsystems based on both the analysis structure and the proposed architecture.
STAGES OF OMT Object Design A design model based on the analysis model but containing implementation details.
STAGES OF OMT Implementation Object 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.