SlideShare a Scribd company logo
Overview of Object-Oriented Concepts Characteristics
BY VIKAS JAGTAP
1.1 Overview of Object-Oriented Concepts Characteristics:
Object-oriented data base systems are proposed as alternative
to relational systems and are aimed at application domains
where complex objects play a central role.
The approach is heavily influenced by object-oriented
programming languages and can be understood as an attempt to
add DBMS functionality to a programming language
environment
The Object Database Management Group (ODMG) has developed
a standard Object Data Model (ODM) and Object Query Language
(OQL), which are the equivalent of the SQL standard for relational
database system.
Object Relational Database Systems:
Object-Relational Data Base Management System (ORDBMS), is a
database management system (DBMS) similar to a relational
database, but with an object-oriented database model,
objects, classes, inheritance and polymorphism are directly
supported in database schemas and in the query language. In
addition, it supports extension of the data model with custom data-
types and methods.
• One aim for the Object-relational database is to bridge the gap
between conceptual data modeling techniques such as Entity-
relationship diagram (ERD) and object-relational mapping (ORM),
which often use classes and inheritance, and relational databases,
which do not directly support them.
Another, related, aim is to bridge the gap between relational
databases and the object-oriented modeling techniques used in
programming languages such as Java, C++, or C#.
Object oriented programming
Data Base capabilities
An OODB bridges gap between OOP & Data Base Technology
Inheritance
Data Encapsulation Object Identity
Polymorphism
Security
Integrity
versioning
Transactions
Persistence
Concurrency
Query
Recovery
Archive
An object-relational DBMS allows software-developers to integrate
their own types and the methods that apply to them into the
DBMS.
ORDBMS technology aims to allow developers to raise the level of
abstraction at which they view the problem domain.
This goal is not universally shared; proponents of relational
databases often argue that object-oriented specification lowers the
abstraction level.
Many SQL ORDBMS in the market today are extensible with user-
defined types (UDT) and custom-written functions (e.g. stored
procedures).
Some (e.g. Microsoft SQL Server) allow such functions to be
written in object-oriented programming languages, but this by
itself doesn't make them object-oriented databases; in an object-
oriented database, object orientation is a feature of the data model.
Any product that adheres to the object-oriented aspects of
SQL:1999 could be described as an object-relational database
management product.
For example, IBM's DB2, Oracle database, and Microsoft SQL
Server, make claims to support this technology and do so with
varying degrees of success.
1.2 Objects: An object is the basic building block of object-
oriented programming.
Programmers developing a system model create object classes to
represent each component of a system.
Those generic classes are then used to create specific instances of
each object for use in the program.
Objects may interact with each other through the use of
methods.
Examples: In an object-oriented personnel database, there
might be a generic object class called "Employee."
Administrators may then create specific instances of that object
for individual employees, such as "Bill Jones" and "Mary Evans.“
 Users may then interact with those objects using methods
For example: HR personnel might use the increase_salary(x)
method to increase an employee's salary by $X. Mary would be
given a $500 raise by invoking "Mary Evans"-
>increase_salary(500).
OID’s:
In object database systems, data objects can be given an object
identifier (OID), which is some value i.e unique in the database
across time.
The DBMS is responsible for generating OID’s,
ensuring that an OID identifies an object uniquely over its entire
life time.
• OIDs can be system generated and user defined.
Reference Types:
The reference types are used in order to refer to a particular
location in table.
• Classes:
A class defines the data values stored by, and the functionality
associated with, an object of that class.
• One of the primary advantages of OO data
modeling is this tight integration of data and
behavior through class mechanism.
• Each object belongs to one, and only one, class.
• An object is often referred to as an instance of a
class.
• A class specification provides the external view of
the instances of that class.
• A class has an extent (sometimes called an extension), which is the
set of all instances of the class.
• Within an OODBMS, the class construct is normally used to define
the database schema.
• Some OODBMS use the term type instead of class. The OODBMS
schema defines what objects may be stored within the database.
Attributes:
Attributes represent data components that make up the content
of a class. Attributes are called data members in the C++
programming language.
• Instance attributes are data components that are stored by each
instance of the class. Class attributes (static data members in C++)
are data values stored once for all instances of the class.
• Attributes may or may not be visible to external users of the class.
Attribute types are typically a subset of the basic data types
supported by the programming language that interfaces to the
OODBMS.
Typically this includes enumeration types such as characters and
booleans, numeric types such as integers and floats, and fixed
length arrays of these types such as strings.
The OODBMS may allow variable length arrays, structures (i.e.,
records) and classes as attribute types.
Pointers are normally not good candidates for attribute types since
pointer values are not valid across application executions.
An OODBMS will provide attribute types that support inter-object
references.
OO applications are characterized by a network of inter-connected
objects.
Object inter-connections are supported by attributes that reference
other objects.
Other types that might be supported by an OODBMS include text,
graphic, and audio.
Often these data types are referred to as binary large objects
(BLOBS).
 Derived attributes are attributes that are not explicitly stored but
instead calculated on demand.
Derived attributes require that attribute access be in-distinguishable
from behavior invocation
 Behaviors:
Behaviors represent the functional component of a class.
• A behavior describes how an object operates upon its attributes and
how it interacts with other related objects.
• Behaviors are called member functions in the C++ programming
language.
• Behaviors hide their implementation details from users of a class.
Encapsulation:
Classes are said to encapsulate the attributes and behaviors of their
instances.
• Behavior encapsulation shields the clients of a class (i.e.,
applications or other classes) from seeing the internal
implementation of a behavior.
• This shielding provides a degree of data independence so that
clients need not be modified when behavior implementations are
modified (they will have to be modified if behavior interfaces
change).
• A class's attributes may or may not be encapsulated.
• Attributes that are directly accessible to clients of a class are not
encapsulated (public data members in C++ classes).
• Modifying the definition of a class's attributes that are not
encapsulated requires modification of all clients that access them.
• Attributes that are not accessible to the clients of a class are
encapsulated (private or protected data members in C++ classes).
• Encapsulated attributes typically have behaviors that provide clients
some form of access to the attribute.
• Modifications to these attributes typically do not require
modification to clients of the class.
Inheritance:
Inheritance allows one class to incorporate the attributes and
behaviors of one or more other classes.
 A subclass is said to inherit from one or more super classes.
The subclass is a specialization of the super class in that it adds
additional data or behaviors, or overrides behaviors of the super
class.
Super classes are generalizations of their subclasses.
Inheritance is recursive.
A class inherits the attributes and behaviors from its super classes,
and from its super class's super classes, etc.
In a single inheritance model, a class may directly inherit from only
a single other class.
In a multiple inheritance model a class may directly inherit from
more than one other class.
Systems supporting multiple inheritance must specify how
inheritance conflicts are handled.
Inheritance conflicts are attributes or behaviors with the same name
in a class and its superclass, or in two superclasses.
Inheritance is a powerful OO modeling concept that supports reuse
and extensibility of existing classes.
The inheritance relationships between a group of classes define a
class hierarchy.
Class hierarchies improve the ability of users to understanding
software systems by allowing knowledge of one class (a super class)
to be applicable to other classes (its subclasses).
Polymorphism:
Polymorphism allows the same operator or symbol to have
different implementations, depending on the type of objects to
which the operator is applied.
• Polymorphism and dynamic binding allow one to define operations
for one object and then to share the specification of the operation
with other objects.
• These objects can further extend this operation to provide
behaviors that are unique to those objects.
• Dynamic binding determines at runtime, which of these operations
is actually executed, depending on the class of the object requested
to perform the operation.
• Polymorphism and dynamic binding are powerful object-oriented
features that allow one to compose objects to provide solutions
without having to write code that is specific to each object.
• All of these capabilities come together synergistically to provide
significant productivity advantages to database application
developers.
DATABASE DESIGN FOR ORDBMS:
 The main objective of ORDBMS design was to achieve the
benefits of both the relational and the object models such as
scalability and support for rich data types.
ORDBMSs employ a data model that attempts to incorporate
OO features into RDBMSs.
All database information is stored in tables, but some of the
tabular entries may have richer data structure, termed abstract
data types (ADTs).
An ORDBMS supports an extended form of
SQL called SQL3 that is still in the development
stages.
The extensions are needed because ORDBMSs have to support
ADT's.
The ORDBMS has the relational model in it because the data is
stored in the form of tables having rows and columns and SQL is
used as the query language and the result of a query is also table or
tuples (rows).
But the relational model has to be drastically modified in order to
support the classic features of object-oriented programming.
Hence the characteristics of an ORDBMSs are:
Base data type extension
Support complex objects,
Inheritance, and
Rule Systems.
ORDBMS allow users to define data types, functions and operators.
As a result, the functionality of the ORDBMSs increases along with
their performance.
An example schema of a student relation which ORDBMS supports
is :
STUDENT
(fname,lname,ID,sex,major,address,dname,location,picture).
The extra attributes "location" and "picture" which are not present
in the traditional EMPLOYEE relation of RDBMS. The data type of
"location" is "geographic point" and that of "picture" is "image“ are
included in ORDBMS.
1.4 Comparing RDBMS,OODBMS & ORDBMS:
Criteria RDBMS OODBMS
ORDB
MS
Defining
standard
SQL2 ODMG-2.0
SQL3
(in
proces
s)
Support for
object-oriented
features
Does not support; It is
difficult to map program
object to the database
Supports extensively
Limited
support
;
mostly
to new
data
types
Usage Easy to use
OK for programmers; some
SQL access for end users
Easy to
use
except
for
some
extensi
ons
Support for
Complex
relationships
Does not support abstract
data types
Supports a wide variety of
data types and data with
complex inter-relationships
Supports
Abstract
Data types
And
Complex
Relationship
s
Performance Very good performance Relatively less performance
Expected to
perform very
well
Product
maturity
Relatively old and so very
mature
This concept is few years old
and so relatively mature
Still in
Developmen
t
stage so
immature.
The use of
SQL
Extensive supports SQL
OQL is similar to SQL, but with
additional features like Complex
objects and object-oriented
features.
SQL3 is
Being
Developed
with OO
Features
Incorporated
in it
Advantages
Its dependence on SQL,
relatively simple query
optimization hence good
Performance
It can handle all types of
complex applications,
reusability
of code, less coding
Ability to
Query
Complex
Applications
and ability
To
handle large
And
complex
Applications
Disadvantages
Inability to handle complex
Applications
Low performance due to
complex query optimization,
inability to support large
scale
Systems
Low
Performanc
e
in web
Applications
Support from
vendors
It is considered to be highly
successful so the market
size is
very large but many vendors
are
moving towards ORDBMS
Presently lacking vendor
support due to vast size of
RDBMS market
All major
RDBMS
vendors are
after this so
has very
good future
The main advantage of ORDBMSs is their massive scalability.
Oracle8, released by Oracle Corporation, is designed to manage
large amounts of information.
Oracle8 is expected to help NASDAQ manage its Very Large Data
Bases, VLDBs, which contain hundreds of gigabytes of time series
applications are required by traders and analysts to examine trends
on stock data.
 In spite of many advantages, ORDBMSs also have a drawback.
The architecture of object-relational model is not appropriate for
high-speed web applications.
However, with advantages like large storage capacity, access speed,
and manipulation power of object databases, ORDBMSs are set to
conquer the database market.
The support from major DBMS vendors and its features will make
ORDBMSs the market leader.
The International Data Corporation (IDC) also expresses the
opinion that the ORDBMS market will surpass the size of the
ODBMS market in next three years.

More Related Content

What's hot (20)

PPTX
SQL - Structured query language introduction
Smriti Jain
 
DOCX
Database management system
RizwanHafeez
 
PPT
Files Vs DataBase
Dr. C.V. Suresh Babu
 
PPTX
Dbms schema & instance
Papan Sarkar
 
PPTX
UNDERSTANDING MARKUP LANGUAGES.pptx
Anbu1416
 
PPTX
Introduction to object oriented language
farhan amjad
 
PPTX
Ordbms
ramandeep brar
 
DOCX
Dbms Concepts
adukkas
 
PPTX
Nosql databases
ateeq ateeq
 
PPT
Data models
Usman Tariq
 
PPTX
Introduction to SQL
Ehsan Hamzei
 
PPT
Lecture 11 - distributed database
HoneySah
 
PPTX
Odbms concepts
Dabbal Singh Mahara
 
PPTX
Introduction to Database, Purpose of Data, Data models, Components of Database
kasthurimukila
 
ODP
ER Model in DBMS
Kabindra Koirala
 
PPT
Lecture 01 introduction to database
emailharmeet
 
PDF
Database management systems
Mohammed El Hedhly
 
PPTX
PPL, OQL & oodbms
ramandeep brar
 
PPTX
Non relational databases-no sql
Ram kumar
 
PDF
chapter 4-Functional Dependency and Normilization.pdf
University of Gondar
 
SQL - Structured query language introduction
Smriti Jain
 
Database management system
RizwanHafeez
 
Files Vs DataBase
Dr. C.V. Suresh Babu
 
Dbms schema & instance
Papan Sarkar
 
UNDERSTANDING MARKUP LANGUAGES.pptx
Anbu1416
 
Introduction to object oriented language
farhan amjad
 
Dbms Concepts
adukkas
 
Nosql databases
ateeq ateeq
 
Data models
Usman Tariq
 
Introduction to SQL
Ehsan Hamzei
 
Lecture 11 - distributed database
HoneySah
 
Odbms concepts
Dabbal Singh Mahara
 
Introduction to Database, Purpose of Data, Data models, Components of Database
kasthurimukila
 
ER Model in DBMS
Kabindra Koirala
 
Lecture 01 introduction to database
emailharmeet
 
Database management systems
Mohammed El Hedhly
 
PPL, OQL & oodbms
ramandeep brar
 
Non relational databases-no sql
Ram kumar
 
chapter 4-Functional Dependency and Normilization.pdf
University of Gondar
 

Viewers also liked (16)

PPT
CSCI-383 Lecture 5-6-7: Object-Oriented Design
JI Ruan
 
PDF
Comparision
saurabhbagane
 
PDF
The Object Oriented Database System Manifesto
Beat Signer
 
PPT
Oodbms ch 20
saurabhshertukde
 
PPT
Object Oriented Database Management System
Ajay Jha
 
PPT
Object Oriented Design Concept
Sharath g
 
PPTX
Object oriented dbms
Kartik Kalpande Patil
 
PPT
"Diffrence between RDBMS, OODBMS and ORDBMS"
baabtra.com - No. 1 supplier of quality freshers
 
PPT
Object Oriented Design
Sudarsun Santhiappan
 
PDF
Chapter 5 software design
Piyush Gogia
 
PPTX
Object oriented database model
PAQUIAAIZEL
 
PDF
Heuristics 101: Understanding and Applying Design Principles
Kamaria Campbell
 
PPT
Object Oriented Dbms
maryeem
 
PPT
Oops ppt
abhayjuneja
 
PDF
Object oriented software engineering concepts
Komal Singh
 
PPT
Object Oriented Programming Concepts
thinkphp
 
CSCI-383 Lecture 5-6-7: Object-Oriented Design
JI Ruan
 
Comparision
saurabhbagane
 
The Object Oriented Database System Manifesto
Beat Signer
 
Oodbms ch 20
saurabhshertukde
 
Object Oriented Database Management System
Ajay Jha
 
Object Oriented Design Concept
Sharath g
 
Object oriented dbms
Kartik Kalpande Patil
 
"Diffrence between RDBMS, OODBMS and ORDBMS"
baabtra.com - No. 1 supplier of quality freshers
 
Object Oriented Design
Sudarsun Santhiappan
 
Chapter 5 software design
Piyush Gogia
 
Object oriented database model
PAQUIAAIZEL
 
Heuristics 101: Understanding and Applying Design Principles
Kamaria Campbell
 
Object Oriented Dbms
maryeem
 
Oops ppt
abhayjuneja
 
Object oriented software engineering concepts
Komal Singh
 
Object Oriented Programming Concepts
thinkphp
 
Ad

Similar to Overview of Object-Oriented Concepts Characteristics by vikas jagtap (20)

PPTX
MIT302 Lesson 2_Advanced Database Systems.pptx
elsagalgao
 
PPT
Chapter 1 - Concepts for Object Databases.ppt
Shemse Shukre
 
PDF
OODBMS Concepts - National University of Singapore.pdf
ssuserd5e338
 
PPTX
Concepts for Object Oriented Databases.ppt
nafsigenet
 
PPTX
Advanced Topics on Database - Unit-2 AU17
LOGANATHANK24
 
PPT
CH11.ppt
ssuser5c874e
 
PPTX
OOSD1-unit1_1_16_09.pptx
ShobhitSrivastava15887
 
PPT
Database administration and management chapter 12
saniaafzalf1f2f3
 
PPT
m211c25.ppt
HaymanotTadese
 
PPT
34. uml
karzansaid
 
PPTX
Adbms 1 object oriented modeling
Vaibhav Khanna
 
PPT
Data structure and problem solving ch02.ppt
Ping261512
 
PPTX
OOP Lecture 01.pptx
BilalWarraich15
 
PDF
Oop concepts classes_objects
William Olivier
 
PPT
oodb.ppt
ISHAAGARWAL75
 
ODP
BIS08 Application Development - II
Prithwis Mukerjee
 
PDF
Adv DB - Full Handout.pdf
3BRBoruMedia
 
PDF
SE_Lec 06_Object Oriented Analysis and Design
Amr E. Mohamed
 
PPTX
Object oriented data model
Vyanktesh Dorlikar
 
MIT302 Lesson 2_Advanced Database Systems.pptx
elsagalgao
 
Chapter 1 - Concepts for Object Databases.ppt
Shemse Shukre
 
OODBMS Concepts - National University of Singapore.pdf
ssuserd5e338
 
Concepts for Object Oriented Databases.ppt
nafsigenet
 
Advanced Topics on Database - Unit-2 AU17
LOGANATHANK24
 
CH11.ppt
ssuser5c874e
 
OOSD1-unit1_1_16_09.pptx
ShobhitSrivastava15887
 
Database administration and management chapter 12
saniaafzalf1f2f3
 
m211c25.ppt
HaymanotTadese
 
34. uml
karzansaid
 
Adbms 1 object oriented modeling
Vaibhav Khanna
 
Data structure and problem solving ch02.ppt
Ping261512
 
OOP Lecture 01.pptx
BilalWarraich15
 
Oop concepts classes_objects
William Olivier
 
oodb.ppt
ISHAAGARWAL75
 
BIS08 Application Development - II
Prithwis Mukerjee
 
Adv DB - Full Handout.pdf
3BRBoruMedia
 
SE_Lec 06_Object Oriented Analysis and Design
Amr E. Mohamed
 
Object oriented data model
Vyanktesh Dorlikar
 
Ad

More from Vikas Jagtap (20)

PPT
ip addressing & routing
Vikas Jagtap
 
PPT
broad band networks
Vikas Jagtap
 
PPT
Simple Network Management Protocol by vikas jagtap
Vikas Jagtap
 
PPT
KNOWLEDGE BASE SYSTEMS
Vikas Jagtap
 
PPT
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
Vikas Jagtap
 
PPS
things which make think ooh!!!!!!!! by vikas jagtap
Vikas Jagtap
 
PPS
Paradise on earth
Vikas Jagtap
 
PPS
Dear son daughter by vikas jagtap
Vikas Jagtap
 
PPS
Double vision by vikas jagtap
Vikas Jagtap
 
PPS
Dubai by vikas jagtap
Vikas Jagtap
 
PPTX
District of maharashtra by vikas jagtap
Vikas Jagtap
 
PPS
Cr java concept by vikas jagtap
Vikas Jagtap
 
PPT
Jdbc ppt
Vikas Jagtap
 
PPT
Jsp ppt
Vikas Jagtap
 
PPT
Servlet ppt by vikas jagtap
Vikas Jagtap
 
PPT
Animation technique
Vikas Jagtap
 
PPT
Amit
Vikas Jagtap
 
PPT
An Introduction to BLUETOOTH TECHNOLOGY
Vikas Jagtap
 
PPT
Network security
Vikas Jagtap
 
PPT
domain network services (dns)
Vikas Jagtap
 
ip addressing & routing
Vikas Jagtap
 
broad band networks
Vikas Jagtap
 
Simple Network Management Protocol by vikas jagtap
Vikas Jagtap
 
KNOWLEDGE BASE SYSTEMS
Vikas Jagtap
 
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
Vikas Jagtap
 
things which make think ooh!!!!!!!! by vikas jagtap
Vikas Jagtap
 
Paradise on earth
Vikas Jagtap
 
Dear son daughter by vikas jagtap
Vikas Jagtap
 
Double vision by vikas jagtap
Vikas Jagtap
 
Dubai by vikas jagtap
Vikas Jagtap
 
District of maharashtra by vikas jagtap
Vikas Jagtap
 
Cr java concept by vikas jagtap
Vikas Jagtap
 
Jdbc ppt
Vikas Jagtap
 
Jsp ppt
Vikas Jagtap
 
Servlet ppt by vikas jagtap
Vikas Jagtap
 
Animation technique
Vikas Jagtap
 
An Introduction to BLUETOOTH TECHNOLOGY
Vikas Jagtap
 
Network security
Vikas Jagtap
 
domain network services (dns)
Vikas Jagtap
 

Recently uploaded (20)

PDF
The dynastic history of the Chahmana.pdf
PrachiSontakke5
 
PPTX
Neurodivergent Friendly Schools - Slides from training session
Pooky Knightsmith
 
PPTX
How to Set Maximum Difference Odoo 18 POS
Celine George
 
PPTX
ASRB NET 2023 PREVIOUS YEAR QUESTION PAPER GENETICS AND PLANT BREEDING BY SAT...
Krashi Coaching
 
PDF
Dimensions of Societal Planning in Commonism
StefanMz
 
PDF
Isharyanti-2025-Cross Language Communication in Indonesian Language
Neny Isharyanti
 
PPTX
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
PDF
LAW OF CONTRACT ( 5 YEAR LLB & UNITARY LLB)- MODULE-3 - LEARN THROUGH PICTURE
APARNA T SHAIL KUMAR
 
PPTX
Cultivation practice of Litchi in Nepal.pptx
UmeshTimilsina1
 
PDF
0725.WHITEPAPER-UNIQUEWAYSOFPROTOTYPINGANDUXNOW.pdf
Thomas GIRARD, MA, CDP
 
PPTX
MENINGITIS: NURSING MANAGEMENT, BACTERIAL MENINGITIS, VIRAL MENINGITIS.pptx
PRADEEP ABOTHU
 
PDF
Women's Health: Essential Tips for Every Stage.pdf
Iftikhar Ahmed
 
PPTX
How to Manage Large Scrollbar in Odoo 18 POS
Celine George
 
PPTX
grade 5 lesson matatag ENGLISH 5_Q1_PPT_WEEK4.pptx
SireQuinn
 
PDF
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
PDF
ARAL-Orientation_Morning-Session_Day-11.pdf
JoelVilloso1
 
PPTX
2025 Winter SWAYAM NPTEL & A Student.pptx
Utsav Yagnik
 
PPTX
Unit 2 COMMERCIAL BANKING, Corporate banking.pptx
AnubalaSuresh1
 
PPTX
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
PDF
Knee Extensor Mechanism Injuries - Orthopedic Radiologic Imaging
Sean M. Fox
 
The dynastic history of the Chahmana.pdf
PrachiSontakke5
 
Neurodivergent Friendly Schools - Slides from training session
Pooky Knightsmith
 
How to Set Maximum Difference Odoo 18 POS
Celine George
 
ASRB NET 2023 PREVIOUS YEAR QUESTION PAPER GENETICS AND PLANT BREEDING BY SAT...
Krashi Coaching
 
Dimensions of Societal Planning in Commonism
StefanMz
 
Isharyanti-2025-Cross Language Communication in Indonesian Language
Neny Isharyanti
 
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
LAW OF CONTRACT ( 5 YEAR LLB & UNITARY LLB)- MODULE-3 - LEARN THROUGH PICTURE
APARNA T SHAIL KUMAR
 
Cultivation practice of Litchi in Nepal.pptx
UmeshTimilsina1
 
0725.WHITEPAPER-UNIQUEWAYSOFPROTOTYPINGANDUXNOW.pdf
Thomas GIRARD, MA, CDP
 
MENINGITIS: NURSING MANAGEMENT, BACTERIAL MENINGITIS, VIRAL MENINGITIS.pptx
PRADEEP ABOTHU
 
Women's Health: Essential Tips for Every Stage.pdf
Iftikhar Ahmed
 
How to Manage Large Scrollbar in Odoo 18 POS
Celine George
 
grade 5 lesson matatag ENGLISH 5_Q1_PPT_WEEK4.pptx
SireQuinn
 
Chapter-V-DED-Entrepreneurship: Institutions Facilitating Entrepreneurship
Dayanand Huded
 
ARAL-Orientation_Morning-Session_Day-11.pdf
JoelVilloso1
 
2025 Winter SWAYAM NPTEL & A Student.pptx
Utsav Yagnik
 
Unit 2 COMMERCIAL BANKING, Corporate banking.pptx
AnubalaSuresh1
 
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
Knee Extensor Mechanism Injuries - Orthopedic Radiologic Imaging
Sean M. Fox
 

Overview of Object-Oriented Concepts Characteristics by vikas jagtap

  • 1. Overview of Object-Oriented Concepts Characteristics BY VIKAS JAGTAP
  • 2. 1.1 Overview of Object-Oriented Concepts Characteristics: Object-oriented data base systems are proposed as alternative to relational systems and are aimed at application domains where complex objects play a central role. The approach is heavily influenced by object-oriented programming languages and can be understood as an attempt to add DBMS functionality to a programming language environment
  • 3. The Object Database Management Group (ODMG) has developed a standard Object Data Model (ODM) and Object Query Language (OQL), which are the equivalent of the SQL standard for relational database system. Object Relational Database Systems: Object-Relational Data Base Management System (ORDBMS), is a database management system (DBMS) similar to a relational database, but with an object-oriented database model,
  • 4. objects, classes, inheritance and polymorphism are directly supported in database schemas and in the query language. In addition, it supports extension of the data model with custom data- types and methods. • One aim for the Object-relational database is to bridge the gap between conceptual data modeling techniques such as Entity- relationship diagram (ERD) and object-relational mapping (ORM),
  • 5. which often use classes and inheritance, and relational databases, which do not directly support them. Another, related, aim is to bridge the gap between relational databases and the object-oriented modeling techniques used in programming languages such as Java, C++, or C#.
  • 6. Object oriented programming Data Base capabilities An OODB bridges gap between OOP & Data Base Technology Inheritance Data Encapsulation Object Identity Polymorphism Security Integrity versioning Transactions Persistence Concurrency Query Recovery Archive
  • 7. An object-relational DBMS allows software-developers to integrate their own types and the methods that apply to them into the DBMS. ORDBMS technology aims to allow developers to raise the level of abstraction at which they view the problem domain. This goal is not universally shared; proponents of relational databases often argue that object-oriented specification lowers the abstraction level.
  • 8. Many SQL ORDBMS in the market today are extensible with user- defined types (UDT) and custom-written functions (e.g. stored procedures). Some (e.g. Microsoft SQL Server) allow such functions to be written in object-oriented programming languages, but this by itself doesn't make them object-oriented databases; in an object- oriented database, object orientation is a feature of the data model.
  • 9. Any product that adheres to the object-oriented aspects of SQL:1999 could be described as an object-relational database management product. For example, IBM's DB2, Oracle database, and Microsoft SQL Server, make claims to support this technology and do so with varying degrees of success.
  • 10. 1.2 Objects: An object is the basic building block of object- oriented programming. Programmers developing a system model create object classes to represent each component of a system. Those generic classes are then used to create specific instances of each object for use in the program. Objects may interact with each other through the use of methods.
  • 11. Examples: In an object-oriented personnel database, there might be a generic object class called "Employee." Administrators may then create specific instances of that object for individual employees, such as "Bill Jones" and "Mary Evans.“  Users may then interact with those objects using methods
  • 12. For example: HR personnel might use the increase_salary(x) method to increase an employee's salary by $X. Mary would be given a $500 raise by invoking "Mary Evans"- >increase_salary(500). OID’s: In object database systems, data objects can be given an object identifier (OID), which is some value i.e unique in the database across time. The DBMS is responsible for generating OID’s,
  • 13. ensuring that an OID identifies an object uniquely over its entire life time. • OIDs can be system generated and user defined. Reference Types: The reference types are used in order to refer to a particular location in table. • Classes: A class defines the data values stored by, and the functionality associated with, an object of that class.
  • 14. • One of the primary advantages of OO data modeling is this tight integration of data and behavior through class mechanism. • Each object belongs to one, and only one, class. • An object is often referred to as an instance of a class. • A class specification provides the external view of the instances of that class.
  • 15. • A class has an extent (sometimes called an extension), which is the set of all instances of the class. • Within an OODBMS, the class construct is normally used to define the database schema. • Some OODBMS use the term type instead of class. The OODBMS schema defines what objects may be stored within the database.
  • 16. Attributes: Attributes represent data components that make up the content of a class. Attributes are called data members in the C++ programming language. • Instance attributes are data components that are stored by each instance of the class. Class attributes (static data members in C++) are data values stored once for all instances of the class. • Attributes may or may not be visible to external users of the class.
  • 17. Attribute types are typically a subset of the basic data types supported by the programming language that interfaces to the OODBMS. Typically this includes enumeration types such as characters and booleans, numeric types such as integers and floats, and fixed length arrays of these types such as strings. The OODBMS may allow variable length arrays, structures (i.e., records) and classes as attribute types. Pointers are normally not good candidates for attribute types since pointer values are not valid across application executions.
  • 18. An OODBMS will provide attribute types that support inter-object references. OO applications are characterized by a network of inter-connected objects. Object inter-connections are supported by attributes that reference other objects. Other types that might be supported by an OODBMS include text, graphic, and audio. Often these data types are referred to as binary large objects (BLOBS).  Derived attributes are attributes that are not explicitly stored but instead calculated on demand.
  • 19. Derived attributes require that attribute access be in-distinguishable from behavior invocation  Behaviors: Behaviors represent the functional component of a class. • A behavior describes how an object operates upon its attributes and how it interacts with other related objects. • Behaviors are called member functions in the C++ programming language. • Behaviors hide their implementation details from users of a class.
  • 20. Encapsulation: Classes are said to encapsulate the attributes and behaviors of their instances. • Behavior encapsulation shields the clients of a class (i.e., applications or other classes) from seeing the internal implementation of a behavior. • This shielding provides a degree of data independence so that clients need not be modified when behavior implementations are modified (they will have to be modified if behavior interfaces change). • A class's attributes may or may not be encapsulated.
  • 21. • Attributes that are directly accessible to clients of a class are not encapsulated (public data members in C++ classes). • Modifying the definition of a class's attributes that are not encapsulated requires modification of all clients that access them. • Attributes that are not accessible to the clients of a class are encapsulated (private or protected data members in C++ classes). • Encapsulated attributes typically have behaviors that provide clients some form of access to the attribute.
  • 22. • Modifications to these attributes typically do not require modification to clients of the class. Inheritance: Inheritance allows one class to incorporate the attributes and behaviors of one or more other classes.  A subclass is said to inherit from one or more super classes. The subclass is a specialization of the super class in that it adds additional data or behaviors, or overrides behaviors of the super class.
  • 23. Super classes are generalizations of their subclasses. Inheritance is recursive. A class inherits the attributes and behaviors from its super classes, and from its super class's super classes, etc. In a single inheritance model, a class may directly inherit from only a single other class. In a multiple inheritance model a class may directly inherit from more than one other class.
  • 24. Systems supporting multiple inheritance must specify how inheritance conflicts are handled. Inheritance conflicts are attributes or behaviors with the same name in a class and its superclass, or in two superclasses. Inheritance is a powerful OO modeling concept that supports reuse and extensibility of existing classes. The inheritance relationships between a group of classes define a class hierarchy.
  • 25. Class hierarchies improve the ability of users to understanding software systems by allowing knowledge of one class (a super class) to be applicable to other classes (its subclasses). Polymorphism: Polymorphism allows the same operator or symbol to have different implementations, depending on the type of objects to which the operator is applied.
  • 26. • Polymorphism and dynamic binding allow one to define operations for one object and then to share the specification of the operation with other objects. • These objects can further extend this operation to provide behaviors that are unique to those objects. • Dynamic binding determines at runtime, which of these operations is actually executed, depending on the class of the object requested to perform the operation.
  • 27. • Polymorphism and dynamic binding are powerful object-oriented features that allow one to compose objects to provide solutions without having to write code that is specific to each object. • All of these capabilities come together synergistically to provide significant productivity advantages to database application developers.
  • 28. DATABASE DESIGN FOR ORDBMS:  The main objective of ORDBMS design was to achieve the benefits of both the relational and the object models such as scalability and support for rich data types. ORDBMSs employ a data model that attempts to incorporate OO features into RDBMSs. All database information is stored in tables, but some of the tabular entries may have richer data structure, termed abstract data types (ADTs).
  • 29. An ORDBMS supports an extended form of SQL called SQL3 that is still in the development stages. The extensions are needed because ORDBMSs have to support ADT's. The ORDBMS has the relational model in it because the data is stored in the form of tables having rows and columns and SQL is used as the query language and the result of a query is also table or tuples (rows).
  • 30. But the relational model has to be drastically modified in order to support the classic features of object-oriented programming. Hence the characteristics of an ORDBMSs are: Base data type extension Support complex objects, Inheritance, and Rule Systems.
  • 31. ORDBMS allow users to define data types, functions and operators. As a result, the functionality of the ORDBMSs increases along with their performance. An example schema of a student relation which ORDBMS supports is : STUDENT (fname,lname,ID,sex,major,address,dname,location,picture).
  • 32. The extra attributes "location" and "picture" which are not present in the traditional EMPLOYEE relation of RDBMS. The data type of "location" is "geographic point" and that of "picture" is "image“ are included in ORDBMS.
  • 33. 1.4 Comparing RDBMS,OODBMS & ORDBMS: Criteria RDBMS OODBMS ORDB MS Defining standard SQL2 ODMG-2.0 SQL3 (in proces s) Support for object-oriented features Does not support; It is difficult to map program object to the database Supports extensively Limited support ; mostly to new data types Usage Easy to use OK for programmers; some SQL access for end users Easy to use except for some extensi ons
  • 34. Support for Complex relationships Does not support abstract data types Supports a wide variety of data types and data with complex inter-relationships Supports Abstract Data types And Complex Relationship s Performance Very good performance Relatively less performance Expected to perform very well Product maturity Relatively old and so very mature This concept is few years old and so relatively mature Still in Developmen t stage so immature. The use of SQL Extensive supports SQL OQL is similar to SQL, but with additional features like Complex objects and object-oriented features. SQL3 is Being Developed with OO Features Incorporated in it
  • 35. Advantages Its dependence on SQL, relatively simple query optimization hence good Performance It can handle all types of complex applications, reusability of code, less coding Ability to Query Complex Applications and ability To handle large And complex Applications Disadvantages Inability to handle complex Applications Low performance due to complex query optimization, inability to support large scale Systems Low Performanc e in web Applications Support from vendors It is considered to be highly successful so the market size is very large but many vendors are moving towards ORDBMS Presently lacking vendor support due to vast size of RDBMS market All major RDBMS vendors are after this so has very good future
  • 36. The main advantage of ORDBMSs is their massive scalability. Oracle8, released by Oracle Corporation, is designed to manage large amounts of information. Oracle8 is expected to help NASDAQ manage its Very Large Data Bases, VLDBs, which contain hundreds of gigabytes of time series applications are required by traders and analysts to examine trends on stock data.  In spite of many advantages, ORDBMSs also have a drawback.
  • 37. The architecture of object-relational model is not appropriate for high-speed web applications. However, with advantages like large storage capacity, access speed, and manipulation power of object databases, ORDBMSs are set to conquer the database market. The support from major DBMS vendors and its features will make ORDBMSs the market leader.
  • 38. The International Data Corporation (IDC) also expresses the opinion that the ORDBMS market will surpass the size of the ODBMS market in next three years.