Object Oriented Analysis and Design

Slides:



Advertisements
Similar presentations
Understand and appreciate Object Oriented Programming (OOP) Objects are self-contained modules or subroutines that contain data as well as the functions.
Advertisements

Vrije Universiteit amsterdamPostacademische Cursus Informatie Technologie Basic OO Technology Technology determines the effectiveness of the approach.
Inheritance Java permits you to use your user defined classes to create programs using inheritance.
CS-2135 Object Oriented Programming
L3-1-S1 OO Concepts © M.E. Fayad SJSU -- CMPE Software System Engineering Dr. M.E. Fayad, Professor Computer Engineering Department, Room.
Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities.
OOP in Java Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
Object-oriented Programming Concepts
OOP in Java Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
BACS 287 Basics of Object-Oriented Programming 1.
CPT 140 Programming Constructs1 OBJECT ORIENTED TECHNOLOGY Terminology and Basic Concepts.
BCS 2143 Introduction to Object Oriented and Software Development.
An Object-Oriented Approach to Programming Logic and Design
Specialization and Inheritance Chapter 8. 8 Specialization Specialized classes inherit the properties and methods of the parent or base class. A dog is.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
1 Object-Oriented Systems Development Bahrami © Irwin/ McGraw-Hill Chapter 2: Object Basics Object-Oriented Systems Development Using the Unified Modeling.
CSC 131 Fall 2006 Lecture # 6 Object-Oriented Concepts.
OBJECT ORIENTED AND FUNCTION ORIENTED DESIGN 1 Chapter 6.
Database Design – Lecture 12 Object Oriented Database Design cont’d.
Basic Concepts of OOP.  Object-Oriented Programming (OOP) is a type of programming added to php5 that makes building complex, modular and reusable web.
COP 4331 – OOD&P Lecture 7 Object Concepts. What is an Object Programming language definition: An instance of a class Design perspective is different.
Object Oriented Programming in Java Habib Rostami Lecture 2.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Object-oriented programming (OOP) is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their.
Identifying Object Relationships, Attributes, and Methods.
Inheritance Modern object-oriented (OO) programming languages provide 3 capabilities: encapsulation inheritance polymorphism which can improve the design,
Object-Oriented Programming
Programming in Java: lecture 7
Object-Oriented Design
Object Oriented Programming
Object-Oriented Modeling
JAVA By Waqas.
Lecture 12 Inheritance.
OBJECT ORIENTED CONCEPT
CHAPTER 5 GENERAL OOP CONCEPTS.
Object-Oriented Programming Basics
Object-Oriented Analysis and Design
The Object-Oriented Thought Process Chapter 1
OOP What is problem? Solution? OOP
Prachet Bhuyan Assistant Professor, CSE,SOT, KIIT University
Object Oriented Concepts -I
Object Oriented Concepts -II
Inheritance Modern object-oriented (OO) programming languages provide 3 capabilities: encapsulation inheritance polymorphism which can improve the design,
Week 4 Object-Oriented Programming (1): Inheritance
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
INTRODUCTION TO OOP Objective:
PRINCIPALES OF OBJECT ORIENTED PROGRAMMING
OBJECT RELATIONSHIPS, ATTRIBUTES, AND METHODS
TIM 58 Chapter 8: Class and Method Design
Object Oriented Concepts
Object-oriented programming principles
Inheritance B.Ramamurthy 11/7/2018 B.Ramamurthy.
Object Oriented Analysis and Design
Chapter 10 Thinking in Objects
Object Oriented Analysis and Design Using the UML
MSIS 670 Object-Oriented Software Engineering
The Object-Oriented Thought Process Chapter 07
Advanced Programming Behnam Hatami Fall 2017.
DEV-08: Exploring Object-oriented Programming
Java Programming, Second Edition
Inheritance and Polymorphism
Basic OOP Concepts and Terms
Object-Oriented Programming
Programming For Big Data
Agenda Software development (SD) & Software development methodologies (SDM) Orthogonal views of the software OOSD Methodology Why an Object Orientation?
Extending Classes Through Inheritance
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Computer Science II for Majors
From Class Diagram to Contract Diagram
The OOTP is intended to get you thinking about how OO concepts are used in designing object-oriented systems. Note: not talking about OO technologies that.
Presentation transcript:

Object Oriented Analysis and Design Agenda Object basics (continued) Encapsulation & Information Hiding Class Hierarchy Inheritance Polymorphism Associations Aggregations

Encapsulation & Information Hiding: Object basics: Encapsulation & Information Hiding: An object is said to encapsulate the data & a program No object can operate directly on another object’s data Object’s internal format is insulated from other object’s Private Protocol Public Protocol Massages Data Permissible operations

Encapsulation & Information Hiding: Object basics: Encapsulation & Information Hiding: Encapsulation & Information Hiding: Very general encapsulation mechanisms are private, public & protected Public members may be accessed from anywhere Private members are accessible only from within a class Protected members can be accessed only from subclasses

Encapsulation & Information Hiding: Object basics: Encapsulation & Information Hiding: An important factor in achieving encapsulation is the design of different classes of objects that operate using common protocol Protocol is an interface to the object TV contains many complex components, but you do not need to know about them to use it Data abstraction is a benefit of the object oriented concepts that incorporates encapsulation & polymorphism

Object basics: Class Hierarchy: An object oriented system organize classes into a super class – subclass hierarchy Different properties and behaviors are used as the basis for making distinction between super & subclasses A subclass inherits all of the properties & methods defined in a super class Eliminates duplication by allowing classes to share & reuse behaviors

Object basics: Inheritance: A relationship between classes where one class is the parent of another class It allows classes to share & reuse behavior & attributes We can “build on what we already have” & “reuse what we already have”

Multiple Inheritance: Object basics: Multiple Inheritance: OO systems permit a class to inherit from more than one superclass This kind of inheritance is referred to as multiple inheritance For example utility vehicle inherits from Car and Truck classes

Object basics: Polymorphism: Poly means “many” & morph means “form” Same operation may behave differently on different objects Draw message can be sent to many objects like triangle, circle or line & each object could act differently Polymorphism is the main difference between a message and a subroutine call It allows us write generic, reusable code more easily, because we can specify general instructions & delegate the implementation details to the object involved

Object basics: Associations: Represents relationship between objects For example a pilot can fly planes. Associations are Bidirectional An important issue in association is cardinality

Object basics: Associations: Client server association: A special form of association is a client-server relationship. This relationship can be viewed as one-way interaction: one object (client) requests the service of another object (server). PrintServer Item Request for printing

Object basics: Aggregations: Aggregation is a form of association Objects are composed of & may contain other objects One object’s attributes can reference to other objects, where an attribute can be object itself Example Category Book Publication Author

Object basics: Aggregations: Example