BSSI - cz. 4

Obiektowe bazy danych

Literatura
D. Figura: Obiektowe bazy danych. AOW PLJ, 1996. Won Kim: Wprowadzenie do obiektowych baz danych. WNT, 1996. P. Coad, E. Yourdon: Analiza obiektowa. O.W. Read Me, 1994. P. Coad, E. Yourdon: Projektowanie obiektowe. O.W. Read Me, 1994.

Podstawy modelu obiektowego

Paradygmat obiektowy

Co to znaczy "obiektowy" (object-oriented)
Wyzwania dla b.d.
Dlaczego model relacyjny nie jest doskonały

Model obiektowy -- cechy

Orientacja na obiekty
Tożsamość obiektów
Złożone typy danych
Abstrakcyjne typy danych
Osłonowanie (encapsulation)
Polimorfizm
Dziedziczenie (inheritance)

Obiektowa baza danych

Dodatkowe wymagania dla obiektowej b.d.
Problemy realizacji obiektowej b.d.
Zalety obiektowej b.d.
Kierunki rozwoju obiektowych b.d.

Projektowanie struktur obiektowych

Modelowanie złożonych systemów

Reprezentacje złożoności
Rozwiązania w modelu obiektowym

Elementy modelu obiektowego

Klasa
Struktury
Przykładowy model obiektowy (notacja Coad/Yourdon)

Przykłady obiektowych baz danych

GemStone

Podstawowe cechy obiektowe

Tożsamość obiektów
Złożone i abstrakcyjne typy danych
Osłonowanie
Polimorfizm
Dziedziczenie

Dodatkowe cechy bazy danych

Trwałość obiektów
Zachowywanie spójności danych
Język zapytań
Bezpieczeństwo
Zarządzanie transakcjami
Wielodostęp
Otwartość
Skalowalność
Rozproszenie

Język OPAL

Narzędzia

GeODE

O2

Podstawowe cechy obiektowe

Tożsamość obiektów
Złożone i abstrakcyjne typy danych
Osłonowanie
Polimorfizm
Dziedziczenie

Dodatkowe cechy bazy danych

Trwałość obiektów
Zachowywanie spójności danych
Zarządzanie transakcjami
Wielodostęp
Bezpieczeństwo
Język zapytań
Otwartość
Skalowalność
Rozproszenie

Język O2C

Wartości
Typy złożone
Klasy i obiekty
class Person
type tuple
(
read name: tuple
(
last_name: string,
first_name: string
),
public address: Address,
private children: list(Person)
)
method
public is_adult: boolean,
public add_child(child: Person)
end
Metody
Nazwy

Język zapytań OQL

Sposoby użycia
Zapytania
Ciekawsze operatory

Narzędzia

O2Tools
O2Look
O2Graph
O2Kit