INFO
Sylabus
Standard ODMG, część 1
1. Plan wykładu
2. Co to jest ODMG?
3. Kluczowi zawodnicy obiektowych BD
4. Krytyczne cechy obiektowych baz danych:
5. Kryteria oceny (obiektowych) SZBD
6. Po co standard?
7. Co podlega standardyzacji?
8. ODMG 2.0: zawartość
9. ODMG 2.0: podejście umiarkowanie rewolucyjne
10. ODMG 2.0: Ramowa architektura
11. Model obiektowy ODMG
12. Typy i klasy; interfejsy i implementacje
13. Podtypy i dziedziczenie
Skorowidz
Wyście:
Wyklad VII. Wprowadzenie do standardu ODMG, część 1:
Motywacje, Model obiektowy (KURS SSR)
I II III IV V VI VII VIII IX X XI XII XIII XIV
« poprzedni punkt   następny punkt »

11. Model obiektowy ODMG

Ustala konstrukcje, które muszą być wspomagane przez OSZBD

(1kB) Podstawowymi prymitywami modelu są obiekty i literale. Każdy obiekt posiada unikalny identyfikator. Literal nie posiada identyfikatora, jest to stała.
(1kB) Obiekty i literale są charakteryzowane poprzez typy. Każdy element danego typu posiada wspólną dziedzinę stanów (ten sam zestaw własności) oraz wspólne zachowanie (ten sam zestaw operacji). Obiekt jest niekiedy określany jako wystąpienie typu
(1kB) Stan obiektu jest zdefiniowany jako wartości przechowywane dla własności. Własnościami mogą być atrybuty obiektu oraz związki obiektu z innymi obiektami. Zwykle własności obiektu mogą zmieniać się w czasie.
(1kB) Zachowanie się obiektu jest zdefiniowane poprzez zbiór operacji, które mogą być wykonane na obiekcie lub przez obiekt. Operacje mogą mieć parametry wejściowe i wyjściowe, każdy z wyspecyfikowanym typem. Operacja może zwrócić rezultat określonego typu.
(1kB)

Baza danych

przechowuje obiekty, umożliwiając jednoczesny dostęp do nich przez wielu użytkowników. Opiera się na schemacie zdefiniowanym w ODL i zawiera wystąpienia typów zdefiniowane w jej schemacie.

12. Typy i klasy; interfejsy i implementacje

Typ posiada dwa aspekty:
  • specyfikację interfejsu (jedną)
  • jedną lub więcej specyfikacji implementacji
  • Interfejs (interface): zewnętrzna charakterystyka obiektów danego typu widoczna dla użytkowników obiektu. Interfejs włącza operacje, które można wykonać na obiekcie oraz zmienne stanu (atrybuty), których wartości są dostępne z zewnątrz

    Implementacja: określa wewnętrzne aspekty obiektu danego typu. Składa się z reprezentacji oraz zbioru metod. Metody są ciałami procedur. Dla każdej operacji zdefiniowanej w interfejsie istnieje odpowiednia metoda, która ustala czynności niezbędne dla wykonania tej operacji. Implementacja może zawieraćstruktury danych i metody wewnętrzne, niewidoczne dla użytkowników obiektu i nie wyspecyfikowane w interfejsie. Typ może mieć wiele implementacji, np. jedną w C++, inną w Smalltalk’u; tylko jedna z nich występuje w danej aplikacji.

    Oddzielenie interfejsu (specyfikacji klasy) od implementacji jest bardzo istotne i określa sposób, w jaki ODMG podchodzi do problemu hermetyzacji (encapsulation).
    (2kB)
    Mniej formalnie:
    Interfejs = typ
    Implementacja = klasa


    13. Podtypy i dziedziczenie (subtypes, inheritance )

    Związek typ-podtyp (typ-nadtyp), określany także jako związek is-a
    interface Pracownik{...};
    interface Profesor : Pracownik{...};
    interface ProfesorNadzw : Profesor{...};
    Obiekt typu Profesor posiada cały interfejs Pracownik plus swój własny.
    Obiekt typu ProfesorNadzw posiada cały interfejs Profesor plus swój własny (czyli cały interfejs Pracownik, plus to, co dodał Profesor, plus własny).
    (2kB)
    Dowolne wystąpienie podtypu jest jednocześnie wystąpieniem nadtypu, np. obiekt typu ProfesorNadzw jest jednocześnie obiektem typu Pracownik. Relacje “być podtypem”, “być nadtypem” są przechodnie.

    Stąd wynika, że wszędzie tam, gdzie może być użyty obiekt o danym typie T, może być także użyty obiekt typu T1, gdzie T1 jest podtypem T. Np. Wszędzie tam gdzie mozę być użyty obiekt Pracownik może być także użyty obiekt Profesor lub typu ProfesorNadzw. Jest to zasada zamienialności (substitutability).


    « poprzedni punkt   następny punkt »