Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Obiekty COM Przemysław Buczkowski. Plan prezentacji 1.Wprowadzenie do COM 2.Historia standardu 3.Jak działa COM 4.Interface IUknown 5.Paradygmaty COM.

Podobne prezentacje


Prezentacja na temat: "Obiekty COM Przemysław Buczkowski. Plan prezentacji 1.Wprowadzenie do COM 2.Historia standardu 3.Jak działa COM 4.Interface IUknown 5.Paradygmaty COM."— Zapis prezentacji:

1 Obiekty COM Przemysław Buczkowski

2 Plan prezentacji 1.Wprowadzenie do COM 2.Historia standardu 3.Jak działa COM 4.Interface IUknown 5.Paradygmaty COM 6.Implementacja serwera COM 7.Pytania na kolokwium

3 COM – co to takiego? COM (ang. Component Object Model) to technologia firmy Microsoft z 1993 pozwalająca na współdzielenie i interakcje z binarnymi modułami za pomocą specjalnych interfece’ów. Wywodzi się z technologii OLE i OLE2. Współcześnie jest ciągle używana, jednak coraz częściej zastępowana jest przez technologie.NET’u o podobnej funkcjonajlości.

4 Zalety COM definiuje pewien standard na poziomie binarnym, w oderwaniu od konkretnego narzędzia projektowego czy języka programowania użytkownikowi jest obojętne, gdzie znajduje się wykorzystywany komponent; jeżeli nawet znajduje się on na odległym komputerze, aplikacja klienta korzysta z niego w taki sam sposób, jak z komponentu lokalnego

5 Wady COM zamknięty charakter technologii w związku z przywiązaniem do jednej platformy systemowej a nawet sprzętowej brak otwartych standardów

6 Historia DDE (Dynamic Data Exchange)(1987) OLE (Object Linking and Embeding)(1991) OLE2 (Object Linking and Embeding 2)(1992) COM (Component Object Model)(1993) OCXs (OLE custom controls),VBX->OCXs,OLE2->OLE(1994) ActiveX, (OCXs, OLE) -> ActiveX(1996) DCOM (Distributed COM)(1996) COM+,(COM,DCOM) -> COM+(2000)

7 COM – jak działa? Pisząc component COM tworzymy w dowolnym wspieranym języku (!) binarkę obsługującą daną funkcjonalność w postaci klasy. Jednocześnie tworzymy publiczną umowę w postaci interface’u który pod unikalnym kluczem GUID rejestrujemy w rejestrze systemu. Klasa z naszej binarki musi oczywiście implementować publikowany interface.

8 COM – jak działa 2? Ponadto klasa również posiada swój GUID. Do utworzenia definicji interface’u może służyć specjalny język Interface Definition Language, który po skompilowaniu narzędziem o nazwie MIDL (wchodzi w skład WinSDK) generuje pliki nagłówkowe, które dołączamy do projektu, w którym chcemy używać obiektu COM.

9 COM – jak działa 3? W docelowym programie za pomocą WinApi lub ‘wyżejpoziomowych’ blibliotek jak np. ATL dla c++ wywołujemy funkcje, które zwracają wskaźniki na utworzone ‘poza’ programem klasy implementujące pożądany interface.

10 Interface IUnknown Wszystkie definiowane interface’y muszą dziedziczyć z IUnknown, który zawiera trzy metody: AddRef(), Release() – są wywoływane przy tworzeniu i usuwaniu odnośnika do interface’u śledząc ilość odwołań QueryInterface() – pozwala uzyskać dostęp do obiektu poprzez inny, zadany obsługiwany przez niego interface

11 Paradygmaty COM Dzięki temu komponenty COM są zwrotne, przechodnie i symetryczne. Zwrotne - można na obiekcie danego typu żądać QueryInterface() na własny typ Przechodnie - jeśli A można zamienić na B i B na C to wtedy można uzyskać C z A Symetryczne - jeśli z A można uzyskać B to z B można uzyskać A

12 Implementacja

13 Pytania Opisz własnymi słowami jak działa COM, wymień wady i zalety Wymień i opisz trzy metody które musi implementować każdy komponent


Pobierz ppt "Obiekty COM Przemysław Buczkowski. Plan prezentacji 1.Wprowadzenie do COM 2.Historia standardu 3.Jak działa COM 4.Interface IUknown 5.Paradygmaty COM."

Podobne prezentacje


Reklamy Google