Warsztat - Programowanie gier komputerowych :: Potwór zwany COM
Strona główna Forum Szukaj Lista użytkowników
Grupy
Zarejestruj Zaloguj
Artykuły
Kliknij na kategorię żeby dodać artykuł Szukaj
Programowanie gier » Artykuły [Wersja do drukowania]
Potwór zwany COM
Opis Wprowadzenie do komponentów
Autor artpoz Data Pon 08 Lis, 2004 10:12 am Typ **
Słowa klucze
Kategoria Artykuły
Odsłony 1294
Potwór zwany COM
Wprowadzenie do komponentów
Wstęp
Początkujący programista DirectX spotyka się z nowymi
pojęciami takimi jak komponenty, obiekty COM, interfejsy
czy metody. Zrozumienie tych pojęć może być trudne,
zwłaszcza jeśli nie ma się wiedzy na temat programowania
obiektowego. Tym artykułem chciałbym nieco przybliżyć
pewne idee i pomysły jakie zrodziły się w głowach
informatyków pod koniec lat osiemdziesiątych a
zaowocowały w latach dziewiędziesiątych modelem
komponentów obiektowych zwanym w skrócie COM (Component
Object Model).
Podejście obiektowe
W latach sześdziesiątych i siedemidziesiątych powstawały
pierwsze obiektowe języki programowania. Ich celem było
lepsze odzwierciedlenie rzeczywistego świata i relacji
zachodzących między jego różnymi elementami. Wprowadzały
one nowe pojęcia, takie jak klasa, obiekt, metoda,
dziedziczenie, hermetyzacja i polimorfizm. Klasa to coś
pewien zbiór atrybutów i operacji na tych atrybutach
(np. forma na ciastko o odpowiednim kształcie, rys. 1).
Obiekt to z kolei egzemplarz klasy (konkretne ciastko o
odpowiednim kształcie stworzone na podstawie tej formy).
Metoda to opis tego co dany obiekt może zrobić (np.
ciastko może się przypalić, jakoś smakować).
Hermetyzacja ukrywa szczegóły (budowy ciastka),
dziedziczenie pozwala wykorzystać jedne klasy do
tworzenia innych wyspecjalizowanych (forma na eklerki,
forma na pączki), dzięki polimorfizmi możemy
umieszczania różne zachowania obiektu na tą samą
sytuację w zależności od rodzaju obiektu (skoro już
ciągnę tą analogię z ciastkami to każde ciastko wie jak
smakuje, a każdy rodzaj smakuje oczywiście inaczej ).
Problemy
Wkrótce w branży informatycznej pojawiły się problemy z
tworzeniem oprogramowania. Było ono zbyt związane z
konkretnym środowiskiem. Posiadało zbyt wiele
statycznych cech, których nie dało się modyfikować lub
było to trudne i ryzykowne dla stabliności programu.
Rozwiązaniem okazał się komponent – niezależny binarny
moduł dodawany do systemu. Ważną też jego zaletą stała
się niezależność od języka programowania.
Podejście komponentowe
Programowanie komponentowe miało polegać na budowie
aplikacji z komponentów, jak z klocków LEGO. Każdy
komponent jest obiektem COM z wbudowanymi interfejsami.
Posłużmy się kolejną analogią (Rys.2). Mamy magnetowid,
który będzie reprezentacją obiektu COM. Interfejs to
rodzaj pilota do tego magnetowidu z zestawem gotowych
przycisków. Każdy z tych przycisków włącza inną funkcję
magnetowidu. Jest to magnetowid zabezpieczony przed
dziećmi (hermetyzacja) i nie można tych funkcji
uruchamiać z panelu magnetowidu, a jedynie za pomocą
pilota. Musimy też sobie wyobrazić, że nasz magnetowid
(obiekt COM) obsługiwać można za pomocą wielu pilotów
(wiele interfejsów). W pewnym sensie interfejs można
traktować jako klasę z samymi metodami zaś obiekt COM
jako zbiór takich właśnie interfejsów.
Na zakończenie
Model COM stanowi podstawę dla innych technologii
komponentowych takich jak DCOM, COM+ czy ActiveX. Jest
to narzucone rozwiązanie, które nas w pewnym stopniu
ogranicza, ale niewątpliwą zaletą staje się szybkość
tworzenia samych programów wykorzystujących gotowe
komponenty.
autor: Artur Poznański (artpoz)
Skocz do: Wybierz forumWarsztat - Programowanie
gier komputerowych|--Szkółka| |--Szkółka -
języki| |--Szkółka - grafika| |--Szkółka -
inne|--Programowanie gier| |--Ogólnie|
|--Dźwięk| |--Sztuczna Inteligencja|
|--Inne|--Programowanie grafiki|
|--Programowanie grafiki| |--OpenGL|
|--DirectX|--Produkcja| |--Pomysły|
|--Projektowanie| |--Projekty| |--Grafika|
|--Ogłoszenia|--O czym innym| |--Konferencje,
spotkania| |--Warsztat| |--Aktualności|
|--Artykuły| |--Wykłady| |--Compo|
|--Lepperlandia|--Śmietnik| |--Z odrzutu
Powered by Knowledge Base, wGEric (C) 2002 PHPBB.com MOD
This script (Knowledge Base - MX Addon v. 1.03e) is modified
by Haplo
W1.5b (C) 2004
[admin: ayufan, g[R]eK, Goliatus, mikael_, Regedit]
Wszystkie czasy w strefie CET (Europa)
Powered by phpBB2 Plus 1.52 based on phpBB 2.0.10 © 2001, 2002 phpBB
Group :: FI Theme :: Mody i Podziękowania
Wyszukiwarka
Podobne podstrony:
Potwór zwany COM, część 2www livemocha com angielski lekcja audioDiagnostyka OBD EOBD OBD2 Opis VAG COMLite Com Pro Plcarlitos thegomels@hotmail com (4)car cross com4usingenglish com English Idioms?regulamin labmp ogarnijtemat comHofman młodzież nie daje sobie wmówić, że Kaczyński to potwórkarolh186@hotmail comBentleyPublishers com Audi?? Service ResetDorst GA the Framework 4 Geom Computing (2002) [sharethefiles com]polskawalczaca com • Zobacz wątek Zarcik3więcej podobnych podstron