INFO
Sylabus
OMG CORBA, cz. 3
1. IDL: Dziedziczenie interfejsów
2. IDL: Struktury i Unie
3. IDL: Tablice, synonimy, stałe
4. IDL: odwzorowania językowe
5. Repozytorium interfejsów
6. Struktura repozytorium interfejsów
7. Repozytorium implementacji
8. Repozytoria interfejsów i implementacji
9. Adaptery obiektów
10. Role adapterów obiektów
11. BOA i POA
12. Co to są “osłony”?
13. Osłona: różne architektury
14. Osłona wewnętrzna i zewnętrzna
15. Grupowanie implementacji w osłony
16. Scenariusz zarządzania obiektami
17. Referencje
18. Statyczne vs. dynamiczne wołania metod
19. Mechanizm refleksjii
Skorowidz
Wyście:
Wyklad III. Wprowadzenie do OMG CORBA, część 3 (KURS SSR)
I II III IV V VI VII VIII IX X XI XII XIII XIV
« poprzedni punkt   następny punkt »

3. IDL: tablice, synonimy, stałe

IDL umożliwia definiowanie tablic elementów dowolnego typu IDL. Każdy element tablicy musi mieć ten sam typ. Tablice mogą być wielowymiarowe

module Bank { 
     struct Klient {  
             string nazwa;  
             Konto konta[3]; 
     } 
     typedef string DaneWpłat[10][2]; /* synonim typu */ 
     /* ostatnie 10 wpłat, data i nazwa wpłacającego */ 
     interface Konto { 
             readonly attribute DaneWpłat wpłaty;  
              ... 
     }; 
};  

Stałe:

const string AUTOR = “Jan Nowak”;
const long MAX_ILOŚĆ_KONT = 10000;
4. IDL: odwzorowania językowe (language mappings)

IDL nie ma konstrukcji sterujących języków programowania, nie może być więc bezpośrednio użyty do implementacji rozproszonych aplikacji.
Zamiast tego, odwzorowania językowe określają, jak cechy IDL mają być odwzorowane na cechy poszczególnych języków programowania.

Dotychczas zdefiniowano odwzorowania dla C, C++, Smalltalk, ADA95, COBOL, Java, Unix Bourne shell; Perl, Eiffel, Modula-3 i inne języki - niezależnie od OMG

Przykładowe odwzorowanie IDL do C++:

OMG IDL C++
long, short,...
any
string, wstring
sequence
referencja do obiektu
interface
operation
module
long, short,...
any class
char *, wchar_t *
class
wskaźnik lub obiekt
class
funkcja członkowska
namespace

Obiekty CORBA są implementowane jako obiekty języka programowania

« poprzedni punkt   następny punkt »