Pereiti do vmistu

Component Object Model

Material z Vikipediyi -- vil'noyi entsiklopediyi.
U Vikipediyi ie statti pro inshi znachennia ts'ogo termina: COM.

COM (Component Object Model) -- platforma komponentno-oriientovanogo programuvannia rozroblena v 1993 rotsi kompaniieiu Microsoft; dozvoliaie vikoristannia mizhprotsesnoyi vzaiemodiyi (inter-process communication) ta dinamichnogo stvorennia ob'iektiv u bud'-iakii movi programuvannia, shcho pidtrimuie tekhnologiiu. Vikoristovuiet'sia perevazhno u OS Windows, khocha bula realizovana na dekil'kokh platformakh.

Istoriia

[red. | red. kod]

Standart COM buv rozroblenii v 1993 rotsi korporatsiieiu Maikrosoft iak osnova dlia rozvitku tekhnologiyi OLE. Tekhnologiia OLE 1.0 vzhe dozvoliala stvoriuvati tak zvani <> (angl. compound documents): napriklad, v paketi Microsoft Office tsia tekhnologiia dozvoliala vkliuchati diagrami Microsoft Excel v dokumenti Microsoft Word). Standart COM mav unifikuvati protses stvorennia, vprovadzhennia i skriplennia takikh uprovadzhuvanikh ob'iektiv, a takozh standartizuvati rozrobku zastosunkiv, shcho vikoristovuiut' uprovadzhuvani ob'iekti.

Plutanina v nazvakh

[red. | red. kod]

V 1996 rotsi Microsoft sprobuvala pereimenuvati tekhnologiiu OLE v ActiveX, ale tse vdalosia lishe chastkovo. Napriklad, tekhnologiia OLE dozvoliala stvoriuvati tak zvani elementi upravlinnia OLE (angl. OLE Controls, abo OCX) -- povtorno vikoristovuvani elementi priznachenogo dlia interfeisu koristuvacha, iaki buli pobudovani na standarti COM. Tsi elementi upravlinnia OLE buli pereimenovani v elementi upravlinnia ActiveX (angl. ActiveX controls), khocha rozshirennia failiv <<.ocx>> za nimi zalishilosia. Potim Maikrosoft stav aktivno prosuvati ActiveX v Internet, vkliuchivshi pidtrimku elementiv ActiveX v svii populiarnii brauzer Internet Explorer. V rezul'tati nazva OLE zalishilasia til'ki za tekhnologiieiu skladenikh dokumentiv i lokal'nikh uprovadzhuvanikh ob'iektiv. A merezhevi OLE-ob'iekti stali nazivati po-novomu -- ActiveX.

Deiaka plutanina mizh poniattiami OLE i ActiveX zberigaiet'sia dosi, ale mova ide pro ti sami COM-tekhnologiyi. Prichomu, inodi navit' plutaiut' poniattia OLE i COM. Tak, uprovadzhuvani OLE-ob'iekti inodi nazivaiut' COM-ob'iektami, a OLE-konteineri COM-konteinerami toshcho.

Printsipi roboti COM

[red. | red. kod]

Osnovnim poniattiam, iakim operuie tekhnologiia COM, ie COM-komponent. Programi, pobudovani na tekhnologiyi COM, faktichno ne ie avtonomnimi programami, a ie naborom COM-komponentiv, shcho vzaiemodiiut' mizh soboiu. Kozhen komponent maie unikal'nii identifikator (GUID) i mozhe odnochasno vikoristovuvatisia bagat'ma programami. Komponent vzaiemodiie z inshimi programami cherez COM-interfeisi -- nabori abstraktnikh funktsii i vlastivostei. Kozhen COM-komponent maie, iak minimum, pidtrimuvati standartnii interfeis <>, iakii nadaie bazovi zasobi dlia roboti z komponentom.

Windows API nadaie bazovi funktsiyi, shcho dozvoliaiut' vikoristovuvati COM-komponenti. Biblioteki MFC i, osoblivo, ATL/WTL nadaiut' nabagato gnuchkishi i zruchnishi zasobi dlia roboti z COM. Biblioteka ATL vid Maikrosoft dosi lishaiet'sia naipopuliarnishim zasobom stvorennia COM-komponentiv. Ale, chasto, COM-rozrobka zalishaiet'sia shche dosit' skladnoiu spravoiu, programistam dovodit'sia vruchnu vikonuvati bagato rutinnikh zavdan', pov'iazanikh z COM (osoblivo tse pomitno u razi rozrobki na C++). Zgodom (u tekhnologiiakh COM+ i osoblivo .NET) Maikrosoft sprobuvav sprostiti zavdannia rozrobki COM-komponentiv.

Rozvitok COM

[red. | red. kod]

DCOM

[red. | red. kod]

Vipushchena v 1996 rotsi tekhnologiia DCOM (angl. Distributed COM -- rozpodilena COM) zasnovana na tekhnologiyi DCE/RPC (riznovidi RPC) i ie rozvitkom COM. DCOM dozvoliaie COM-komponentam vzaiemodiiati odin z odnim po merezhi. Golovnim konkurentom DCOM ie insha vidoma rozpodilena tekhnologiia -- CORBA.

COM+

[red. | red. kod]

U skladi Windows 2000 bula vipushchena tekhnologiia COM+, iaka rozshiriuvala mozhlivosti rozrobnikiv COM-komponentiv, nadaiuchi yim deiaki gotovi poslugi, napriklad:

  • pokrashchenu pidtrimku nitok;
  • dostup do kontekstu, v iakomu vikonuiet'sia komponent (napriklad, komponenti, vikoristani v ASP, mozhut' z tsiieiu mozhlivistiu distati dostup do vnutrishnikh ob'iektiv tiieyi storinki, na iakii voni vikonuiut'sia).

COM+ ob'iednuie komponenti v tak zvani zastosunki COM+, shcho sproshchuie administruvannia i obslugovuvannia komponentiv. Bezpeka i produktivnist' -- osnovni napriami udoskonalen' COM+. Deiaki ideyi, zakladeni v osnovu COM+, buli takozh realizovani v Microsoft .NET.

.NET i maibutnie COM

[red. | red. kod]

U 2002 rotsi bula ofitsiino vipushchena platforma Microsoft .NET, iaka na s'ogodnishnii den' ogoloshena Maikrosoftom rekomendovanoiu osnovoiu dlia stvorennia zastosunkiv i komponentiv pid Windows. Z tsiieyi prichini v .NET vkliucheni i zasobi, shcho dozvoliaiut' zvertatisia do komponentiv COM iz zastosunkiv .NET, i navpaki. Za slovami predstavnikiv Maikrosoftu, COM (tochnishe, COM+) i .NET ie vidminno vzaiemno dopovniuvanimi tekhnologiiami. Takozh bulo zaiavleno, shcho Windows Vista bude pobudovana z vikoristanniam tekhnologii .NET i COM+.

Div. takozh

[red. | red. kod]

Posilannia

[red. | red. kod]
Tse nezavershena stattia pro Microsoft Windows.
Vi mozhete dopomogti proiektu, vipravivshi abo dopisavshi yiyi.
Instrumenti keruvannia
Programi
Shell
Servisi
Failovi sistemi
Server
Arkhitektura
Bezpeka
Sumisnist'
API
Igri
Vidkinuti
Inshe