CORBA () – technologia zapewniająca komunikację pomiędzy obiektami pracującymi w heterogenicznych (różnorodnych) systemach komputerowych. Obiekty pełniące dowolne funkcje mogą być zaimplementowane w różnych językach programowania, na dowolnej platformie sprzętowej, pod kontrolą różnych systemów operacyjnych.

Opis obiektów, a właściwie interfejsów do nich, znajduje się w pliku IDL (ang. ), który jest kompilowany na kod zajmujący się przekazywaniem metod (w przypadku implementacji technologii CORBA w niektórych językach interpretowanych, plik IDL jest interpretowany w czasie wykonania).

Obiekty mają swoje adresy (ang. ). Są to kilkusetznakowe adresy kodujące wiele informacji o obiekcie, m.in. adres komputera, adres programu na komputerze, informacje o kolejności zapisu bajtów (czy jest to big endian, czy little endian), numer obiektu, typ obiektu, itd.

Adresy IOR mogą dotyczyć także niskopoziomowych protokołów transmisji danych – zwykle (ang. ) lub IIOP (ang. ).

Standard CORBA Standard CORBA został opracowany przez Object Management Group i doczekał się wersji 3.0. Standardy tworzone są według zasady „najpierw standard, potem implementacje” (czyli tak samo jak w W3C i zupełnie inaczej niż w IETF).

Jedną z wad architektury CORBA jest brak standardowego i szeroko zaimplementowanego mechanizmu bezpieczeństwa.

Popularne implementacje standardu CORBA to np. ORBit, OMNIOrb.

Z technologii CORBA korzysta m.in. GNOME.

Inne technologie obiektów rozproszonych to m.in. RMI, SOAP, DCOP, DCOM.

Zobacz też PVM – Parallel Virtual Machine RMI – Remote Method Invocation SOAP – Simple Object Access Protocol DCOP – Desktop COmmunications Protocol DCOM – Distributed Component Object Model OMG – Object Management Group

Linki zewnętrzne (prezentacje *.ppt) CORBA (Gopalan Suresh Raj's) RMI – Java Remote Method Invocation (Sun) SOAP – Simple Object Access Protocol (W3C Recommendation) SOAP – Simple Object Application Protocol (Apache WebServices) DCOP – Desktop COmmunications Protocol (KDE) DCOM – Distributed Component Object Model Technologies (Microsoft) OMG – Object Management Group

Kategoria:Interfejsy programistyczne