10 Bazy danych obiektowość wykład

background image

Obiektowe bazy danych - wprowadzenie (konspekt wykładu)

Pomimo wzrastającego zainteresowania programowaniem obiektowym i obiektowymi bazami

danych, nie opracowano jak dotąd jednego standardu pojęć obiektowych do wykorzystania w językach

programowania i bazach danych. Obecnie systemy relacyjnych baz danych silnie zdominowały rynek

baz danych, a systemy baz obiektowych muszą sobie dopiero wyrobić własne miejsce na tym rynku.

Powszechnie uważa się, że wkrótce zostanie opracowany i uzgodniony standard obiektowego modelu

danych, który umożliwi systemom obiektowych baz danych następnej generacji zajęcie

niekwestionowanego miejsca na rynku baz danych.

Obiektowa baza danych jest zbiorem obiektów, których zachowanie się i stan oraz związki są

określone zgodnie z obiektowym modelem danych. Model danych przedstawia logiczną strukturę

obiektów (encji) z prawdziwego świata, nałożonych na nie więzów i związków między tymi

obiektami. Z obiektowym podstawowym modelem danych są ściśle związane następujące pojęcia:

1) Obiekt i identyfikator obiektu:

Każda encja pochodząca z rzeczywistego świata jest obiektem bazy danych, z którym jest

skojarzony jednoznaczny, systemowy identyfikator.

Obiektem jest rzecz lub pojęcie obserwowane w świecie rzeczywistym, którego dotyczy

system informacyjny. Obiekt jest odróżnialny od innych obiektów, ma dobrze określoną
granicę i nazwę

Obiektem może też być pewien zamknięty fragment oprogramowania (dana, procedura,

moduł, dokument, okienko dialogu) którym można operować jak zwartą bryłą (wyszukiwać,
kopiować, usuwać, indeksować)

Obiekt posiada swoją tożsamość, która wyróżnia go spośród innych obiektów. Tożsamość

obiektu jest niezależna od wartości jego atrybutów (tożsamość= trwały wewnętrzny
identyfikator)

Obiekt posiada stan, który może zmieniać się w czasie (bez zmiany tożsamości)

Obiekt może być złożony

Obiekt może być powiązany z innymi obiektami

Obiekt ma przypisane zachowanie tj. zestaw operacji które wolno do niego stosować

(implementacja operacji jest nazywana metodą)

Obiekt ma przypisany typ tj. wyrażenie językowe, które ogranicza dopuszczalną budowę

obiektu oraz ustala operacje, które wolno wykonywać na obiekcie

2) Atrybuty i metody:

Obiekt charakteryzuje się jednym lub więcej atrybutami i jedną lub więcej metodami, które operują

na wartościach atrybutów.

3) Klasa:

Wszystkie obiekty, które mają ten sam podzbiór atrybutów i metod mogą być zgrupowane w jednej

klasie.

background image

4) Hierarchia klas i dziedziczenie:

Klasy w systemie tworzą hierarchię. Klasa może mieć dowolną liczbę podklas może mieć też

nadklasę (czasami kilka nadklas). Obiekty należące do danej klasy mogą dziedziczyć atrybutu i

metody od nadklasy (czasami kilku nadklas - dziedziczenie wielokrotne).

5) Hermetyzacja i przekazywanie komunikatów:

W celu uzyskania dostępu do wartości atrybutów i metod obiektu muszą zostać wysłane

odpowiednie komunikaty. Nie ma innej drogi dostępu do obiektu oprócz ogólnie dostępnego

interfejsu, który jest dla niego określony.

4) Polimorfizm

W zależności od bieżącego kontekstu obiektów mogą one różnie reagować na przychodzące

komunikaty. Jednej interfejs dostępu do obiektu może być wykorzystany do realizacji różnych

zadań-algorytmów.

Największa zaletą modelu obiektowego jest to, że przy jego wykorzystaniu można w sposób bardziej

naturalny niż w przypadku modelu obiektowego przedstawić sytuacje zachodzące w świecie

rzeczywistym. Najprostszym przykładem jest choćby możliwość przechowywanie obiektów

złożonych. W relacyjnej bazie danych w kolumnie wiersza można przechowywać tylko pojedynczą

atomową wartość. Obiekt złożony składa się natomiast z innych obiektów, które z kolei same mogą

zawierać inne obiekty. Większość obiektów świata rzeczywistego ma właśnie taki charakter.

Przykładowe oprogramowanie do zarządzania bazami danych wykorzystujące model obiektowy (za

Wikipedia):

Caché

Cerebrum

ConceptBase

Db4o

eXtremeDB

ENCORE

Facets (dawniej znana jako GemStone-J)

Gemstone Database Management System

Generic Object Oriented Database System (GOODS) [2]

Haley Systems

background image

JADE

Jasmine Object Database

JDOInstruments

JODB (Java Objects Database) [3]

Magma Object Database [4]

MyOODB [5]

ObjectDB [6]

Objectivity/DB

ObjectStore

ONTOS

Orient ODBMS (oprogramowanie) [7]

Ozone Database Project [8]

Perst

Statice

Versant Object Database [9]

Zope Object Database

W praktyce są one jednak wykorzystywane niezwykle rzadko.


Wyszukiwarka

Podobne podstrony:
13 Bazy danych obiektowość wykładid 14617
13 Bazy danych obiektowość wykład
13 Bazy danych obiektowość wykładid 14617
ssciaga, Studia PŚK informatyka, Semestr 4, Bazy Danych 2, Bazy Danych Zaliczenie Wykladu, Bazy Dany
2 Bazy danych projektowanie wykład
BAZY DANYCH Streszczenie z wykładów (2)
12 Bazy danych Architektura wykład
11 10 2011 programowanie obiektowe wykład
info, Studia PŚK informatyka, Semestr 4, Bazy Danych 2, Bazy Danych Zaliczenie Wykladu, Bazy Danych
wykłady, bazy danych Goluchowski-wyklady 2002
ssciaga, Studia PŚK informatyka, Semestr 4, Bazy Danych 2, Bazy Danych Zaliczenie Wykladu, Bazy Dany
2 Bazy danych projektowanie wykład
głowacki,bazy danych, Obiektowe Bazy Danych

więcej podobnych podstron