INFO
Sylabus
Standard ODMG, część 4
1. Plan wykładu
2. Co to jest język zapytań?
3. OQL -wstępne informacje
4. Krótka charakterystyka OQL
5. OQL - kilka przykładów
6. Wejście i wynik zapytań w OQL
7. Przykłady w OQL
8. Tworzenie obiektów
9. Co zwraca zapytanie?
10. Wyrażenia ścieżkowe
11. Predykaty, złączenia
12. Wartości zerowe
13. Wołanie metod
14. Polimorfizm, późne wiązanie, wskazanie klasy
Skorowidz
Wyście:
Wyklad X. Wprowadzenie do standardu ODMG, część 4:
OQL (KURS SSR)
I II III IV V VI VII VIII IX X XI XII XIII XIV
« poprzedni punkt   następny punkt »

3. OQL (Object Query Language)-wstępne informacje

(2kB) OQL bazuje na modelu obiektowym ODMG
(2kB) OQL jest obiektowym językiem zapytań w stylu SQL (ale zbieżność jest powierzchowna, KS.). Rozbieżności dotyczą pojęć obiektowych, takich jak złożone obiekty, tożsamość obiektów, wyrażenia ścieżkowe, polimorfizm, wołanie operacji, późne wiązanie
(2kB) OQL przewiduje konstrukcje wysokiego poziomu do przetwarzania zbiorów obiektów, ale nie jest ograniczony do przetwarzania zbiorów (może również przetwarzać struktury, listy, tablice, itp. z taka samą efektywnością)
(2kB) OQL zapewnia swobodne ortogonalne kombinowanie operatorów, o ile tylko nie narusza to mocnej kontroli typów. Wynika to z faktu, że rezultat zapytania ma typ należący do systemu typów ODMG i w związku z tym może stanowić argument większego zapytania. (Faktycznie, OQL jest w tym względzie lepszy od SQL, ale daleki od ideału, KS.)
(2kB) OQL nie jest kompletny obliczeniowo (tj. są zapytania, których nie można w nim zadać, nie posiada operacji aktualizacyjnych, nie posiada abstrakcji programistycznych i konstrukcji sterujących, KS.)
(2kB) Zapytania OQL mogą być używane wewnątrz języków programowania, dla których ODMG zdefiniował wiązania. OQL może także wołać operacje zdefiniowane w tych językach programowania.
(2kB) OQL nie przewiduje explicite operacji aktualizacyjnych, ale może wywoływać operacje zapisane w innych językach, które są dla tego celu zdefiniowane. Jest to motywowane “obiektowością”, która zdaniem ODMG zakłada, że wszystko co dzieje się na obiektach ma być wykonywane za pomocą “metod” (jest tu pewne nieporozumienie: nie można uniknąć niektórych operacji generycznych; KS)
(2kB) OQL zapewnia deklaracyjny (nieproceduralny) dostęp do obiektów. Stąd wynika, że zapytania OQL mogą być łatwo optymalizowane, co wynika z istoty deklaracyjności (jest to pobożne życzenie, KS.)
(2kB) Formalna semantyka OQL może być łatwo zdefiniowana. (Jest to nieprawda, formalna semantyka OQL jest poważnym problemem badawczym; na szczęście nie jest to problem praktyczny; KS).



« poprzedni punkt   następny punkt »