Obiektowe modelowanie systemów informatycznych



Pobieranie 8,01 Mb.
Strona5/113
Data23.10.2017
Rozmiar8,01 Mb.
1   2   3   4   5   6   7   8   9   ...   113

Zasady reprezentacji danych w obiektowych bazach danych


Obiektowość w odniesieniu do baz danych łączy pojęcia z różnych dziedzin, a przynajmniej z dziedzin następujących:

1. Z obszaru języków programowania: abstrakcyjne typy danych i zasada enkapsulacji, jak również kompletność obliczeniowa języka programowania.



Abstrakcyjny typ danych (abstract data type, ADT) to jest typ struktury danych skojarzony z operacjami działającymi na elementach tego typu. Bezpośredni dostęp do składowych takiej struktury danych nie jest możliwy, dzięki czemu jej szczegóły implementacyjne (np. Zestaw i reprezentacja atrybutów) są niewidoczne. Klasycznym przykładem abstrakcyjnego typu danych jest stos, wraz z operatorami takimi jak PUSH (połóż element na wierzchołku stosu), POP (zdejmij element z wierzchołka stosu), TOP (odczytaj element znajdujący się na wierzchołku stosu) i EMPTY (sprawdź, czy stos jest pusty). Po zadeklarowaniu lub utworzeniu zmiennej X jako stosu, wszelkie operacje na tej zmiennej odbywają się poprzez powyższe cztery operatory.

Kompletność obliczeniowa (Turing power) to jest charakterystyka ustalająca moc języka programowania na poziomie ustalonym przez maszynę Turinga. Język SQL ma brak kompletności obliczeniowej, bo nie zawiera takich konstrukcji jako pętli, IF... THEN...ELSE...

2.Z obszaru techniki oprogramowania: rozszerzalność i ponowne wykorzystanie kodu oraz zasada modularyzacji.

3. Z obszaru modelowania danych: zagnieżdżone relacje oraz uogólnienia modelu relacyjnego w powiązaniu z semantycznymi modelami danych.

Semantyczny model danych (semantic data model) to jest model danych wprowadzający pojęcia takie jak: generalizacja, specjalizacja, (generalizacja to jest przeciwieństwo do specjalizacji) asocjacja, agregacja, klasyfikacja, które ułatwiają odwzorowanie modelowanego fragmentu rzeczywistości w jej abstrakcyjny obraz pojęciowy (na prz. Model encja – związek ).



W celu osiągnięcia bardziej adekwatnej reprezentacji danych obiektowa baza danych musi mieć następujące zasady:

  1. Deklaracje typów są tak elastyczne jak w językach programowania.

  2. Obiekty mogą być identyfikowane unikatowe niezależnie od ich wartości. Muszą służyć temu identyfikatory obiektów, umożliwiające odwołania między obiektami. Identyfikator obiektu (Object Identifier –OID) musi być przypisany do obiektu przy go stworzeniu. OID służy do odróżnienia obiektu od innych obiektów. Generacja identyfikatorów to jest funkcja Obiektowego SZBD (OSZBD).

  3. Możliwe jest ponowne użycie informacji przez:

  • Wykorzystania agregacji, która pozwoli na odwoływanie do obiektów z różnych miejsc, a więc nowe informacje mogą być zestawiane z informacji istniejących. Inaczej mówiąc, nowe obiekty są tworzone z obiektów istniejących, które stają się składnikami i mogą być traktowane jako podobiekty (Przykład Samochód, nadwozie, silnik, skrzynia biegów to agregacja).

  • Wykorzystanie specjalizacji między pewnymi informacjami, co umożliwia następnie dziedziczenie struktury i zachowania.

  1. Struktura modelowanych obiektów może być w razie potrzeby zagnieżdżona; różne struktury tego rodzaju mogą się wzajemnie do siebie odwoływać lub mogą być wprowadzone jako specjalizacje innych.

  2. Obiekty mogą być wyposażane w zachowanie, łączące pewne operacje z tymi obiektami.

    • Definicje zarówno struktury bazy danych, jak i zachowania muszą być rozszerzalnymi w sensie logicznym. Oznacza to, że nawet po zakończeniu projektu bazy danych można zdefiniować i dodać nowe atrybuty i nowe operacji do istniejącego zbioru. Cecha ta umożliwia ewolucję bazy danych.

    • Każdy obiekt musi zawierać strukturę i zachowanie. Strukturę obiektu tworzą atrybuty, których wartościami mogą być skalar, zbiory lub odwołania do innych obiektów. Zbiór wartości obiektu tworzy stan obiektu. Zachowanie się obiektu wynika z metod, które mogą być wykonane na obiekcie.

    • Dostęp do stanu obiektu musi być realizowany przez przesyłanie komunikatów. Gdy obiekt otrzymuje komunikat, który rozumie, jest inicjowane wykonywanie związanej z nim metody.

  3. Obiekty o takiej samej strukturze i takim samym zachowaniu są grupowane w klasy. Każdy obiekt jest instancją jednej klasy. Komunikaty przekazywane między obiektami są realizowane na podstawie informacji zdefiniowanych w danej klasie. Typową sekwencję występującą podczas przekazywania komunikatów jest pokazana na rys.16. Obiekt Klasy 2 wysyła komunikat Kom 2 do obiektu z klasy 1. Odbiorca sprawdza klasę, aby określić sposób reakcji na ten komunikat. Ponieważ w Klasie 1 można wykonać Kom 2, a dokładniej za pomocą Met 2, do obiektu jest przekazywana odpowiedź zawierająca tę metodę, a następne jest ona wykonywana przez obiekty.

Rys.16


  1. Klasy są zorganizowane w hierarchię, która jest tworzona przez definiowanie klasy jako specjalizacji jednej lub kilku innych klas. Klasy podporządkowane noszą nazwę podklas, a klasy nadrzędne – nadklas. Podklasy dziedziczą strukturę i zachowanie z odpowiednich nadklas. Jeśli podklasa ma własną strukturę i zachowanie, to zastępuje dziedziczenie.

Powyższe zasady charakteryzują paradygmat obiektowości, znajdujący zastosowanie w różnych kontekstach, na przykład w językach programowania, systemach operacyjnych oraz bazach danych.


1   2   3   4   5   6   7   8   9   ...   113


©operacji.org 2017
wyślij wiadomość

    Strona główna