Download download

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Design Patterns wikipedia , lookup

Functional programming wikipedia , lookup

Programming language wikipedia , lookup

Falcon (programming language) wikipedia , lookup

Structured programming wikipedia , lookup

Abstraction (computer science) wikipedia , lookup

Reactive programming wikipedia , lookup

C++ wikipedia , lookup

Go (programming language) wikipedia , lookup

Object-oriented programming wikipedia , lookup

Object-relational impedance mismatch wikipedia , lookup

C Sharp (programming language) wikipedia , lookup

Transcript
Matakuliah
Tahun
Versi
: M0174/OBJECT ORIENTED DATABASE
: 2005
: 1/0
Pertemuan 17
Building Object Database Application
1
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa
akan mampu :
• Mahasiswa dapat Menjelaskan ikatan
antara programming language dengan
object database (C2)Mahasiswa dapat
Menjelaskan pembuatan object database
application (C2)
2
Outline Materi
•
•
•
•
ODL
OML
System interfacing
Persistent programming languanges
3
ODL
• Object Definition Language
• ODL and OQL respectively can describe
object database queries and interfaces to
object types. However this language have
limited expressiveness. For examples
OQL & ODL is not computationally
complete
4
ODL
• These limitation mean that OQL & ODL
must be used in conjunction with other
programming language. This is needed to
implement object types & to implement
computations performed by applications
5
ODL
• Relationship between
language
Programming Language (C++,Java) for handling computations, the use interface,
access, to other systems
Object Manipulation Language for accessing and modifying objects in the object
database
Object Definition Language for defining the interface to the object database
Programming Language (C++, Java) for implementing the object types
(structured and methods)
The Object Database
6
ODL
• Programming Language ODL & OQL
Binding
– The binding associate the programming
language’s elements with characteristics &
properties of the object data model.
– The aim of this binding is to extend a
programming language such that it can also
define & manipulate object databases, and
can therefore be used to construct object
database applications
7
ODL
– A programming language ODL/OML binding
extends the programming language such that
it can be used to implement object database
applications.
– A binding may tightly or loosely couple the
programming language and the object data
model.
8
ODL
– A tightly coupled binding is achieved by integrating
the object database language into the programming
language syntax, e.g, by providing a mechanism for
embedding the object database language statements
within programs.
– a loosely coupled binding, on the other hand, doesn’t
include object database language within programming
language syntax. Instead database language
expressions are handled as character strings to be
processed by appropriate procedures when the
program executed
9
ODL
– In general, types within the object data model
will be implemented as classes within the
programming language.
– Problem can occur where there are difference
in the underlying object models. Example
definition data binding requires some way of
reconciling the fact that java allows a type to
have only one supertype but the object data
model allows multiple supertypes
10
OML
• Object Manipulations Language
• The language used for accessing and
modifying objects in an object database
• Example
11
System interfacing
• System interfacing is the very weakest
form of programming language to
database system binding.
• A system interface supports an API which
allows application programs to pass
instructions to the DBMS and receive
responses.
12
Persistent programming languanges
• Persistence programming language
represent the very tightest form of
programming language to database
system binding.
• In this approach, persistence data storage
facilities are integrated into the
programming language
13
Persistent programming languanges
• The difference between programming
language ODL/OML binding (previous
describe), and this approach is that the
former maps the programming language
elements into the object data model of an
ODBMS, where as a persistence
programming language extends its own
underlying object model to enable all
object to be persistence or transient
14
Persistent programming languanges
• The aim is for programs to be able to
define and manipulate objects, be they
persistent or transient, in the same way.
15
SUMMARY
• The OQL and ODL must be used in
conjunction with other programming
language to build object database systems
• Programming languages are needed to
program methods and application program
computations
16