Komponens objektum modell

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2022. május 6-án felülvizsgált verziótól ; az ellenőrzések 4 szerkesztést igényelnek .

A COM ( eng.  Component Object Model  "component Object Model"; ejtsd: [com]) a Microsoft technológiai szabványa , amelyet arra terveztek, hogy kölcsönhatásban lévő komponenseken alapuló szoftvereket hozzanak létre, amelyek mindegyike számos programban használható egyidejűleg [1] . A szabvány az objektum-orientált programozás polimorfizmusának és tokozásának gondolatait testesíti meg . A COM szabvány lehetett univerzális és többplatformos is, de főként a Microsoft Windows család operációs rendszerein ragadt meg . A Windows modern verzióiban a COM-ot nagyon széles körben használják. COM-alapú technológiák kerültek bevezetésre: Microsoft OLE Automation , ActiveX , DCOM , COM+ , DirectX és XPCOM .

A COM története

A COM szabványt 1993-ban a Microsoft fejlesztette ki az OLE technológia fejlesztésének alapjaként . Az OLE 1.0 technológia már lehetővé tette, hogy ún. „ összetett dokumentumok ” ( eng.  összetett dokumentumok ): például a Microsoft Office csomagban ez a technológia lehetővé tette Microsoft Excel diagramok Microsoft Word dokumentumokba való beillesztését .

Névzavar

1996- ban a Microsoft megpróbálta átnevezni az OLE technológiát ActiveX-re, de ez csak részben járt sikerrel. Például az OLE technológia lehetővé tette az úgynevezett OLE vezérlők ( angolul  OLE Controls , vagy OCX ) létrehozását – újrafelhasználható felhasználói felület elemek , amelyek a COM szabványra épültek. Ezeket az OLE vezérlőket átnevezték ActiveX - vezérlőkre , bár megtartották a " " fájlkiterjesztést .  A Microsoft ezután elkezdte aktívan népszerűsíteni az ActiveX-et az interneten , és beépítette az ActiveX-vezérlők támogatását az Internet Explorer böngészőjébe . Ennek eredményeként az OLE név csak az összetett dokumentumok és a helyi beágyazott objektumok technológiája mellett maradt meg. És a hálózati OLE-objektumokat új módon kezdték hívni - ActiveX. .ocx

Az OLE és az ActiveX fogalmai között a mai napig akad némi zűrzavar, de ugyanazokról a COM technológiákról beszélünk. És néha még az OLE és a COM fogalmát is összekeverik. Például a beágyazott OLE-objektumokat néha COM-objektumoknak, az OLE-tárolókat pedig néha COM-tárolóknak és így tovább.

Windows támogatás

Hogyan működik a COM

A fő koncepció, amelyen a COM szabvány működik, a COM összetevő . A COM-szabványra épített programok valójában nem önálló programok, hanem egymással kölcsönhatásban álló COM-komponensek halmaza. Minden összetevő egyedi azonosítóval ( GUID ) rendelkezik, és egyszerre több program is használhatja. A komponens a COM interfészek  - absztrakt függvények és tulajdonságok halmazain keresztül - kölcsönhatásba lép más programokkal . Minden COM komponensnek legalább a szabványos " IUnknown" interfészt kell megvalósítania, amely az összetevővel való munka alapvető eszközeit biztosítja. A " IUnknown" felület három módszert tartalmaz: QueryInterface, AddRef, Release.

A Windows API olyan alapvető funkciókat biztosít, amelyek lehetővé teszik a COM-összetevők használatát. Az MFC -könyvtárak és különösen az ATL / WTL rugalmasabb és kényelmesebb eszközöket biztosítanak a COM-mal való munkavégzéshez. A Microsoft ATL továbbra is a legnépszerűbb eszköz a COM-összetevők létrehozására. De gyakran a COM-fejlesztés még mindig meglehetősen bonyolult, a programozóknak sok rutinfeladatot kell manuálisan végrehajtaniuk a COM-hoz kapcsolódóan (ez különösen C++ fejlesztés esetén szembetűnő ). Ezt követően (a COM+ és különösen a .NET technológiákban ) a Microsoft megpróbálta leegyszerűsíteni a COM-komponensek fejlesztésének feladatát.

A COM szabványon alapuló technológiák

DCOM

Az 1996 -ban kiadott DCOM ( Distributed COM )  technológia  a DCE/RPC technológián (az RPC egy változata ) alapul. A DCOM lehetővé teszi, hogy a COM-összetevők hálózaton keresztül kommunikáljanak egymással . A DCOM fő versenytársa egy másik jól ismert elosztott technológia - a CORBA .

Mind a DCOM, mind a CORBA megoldja a metódus meghívásának problémáját egy másik gépen található objektumon, valamint egy objektumra való hivatkozás átadását egyik gépről a másikra.

A DCOM hálózati réteg neve ORPC (Object RPC), és a DCE RPC objektumorientált kiterjesztése.

A DCOM technológia alapvető biztonsági beállításokat biztosít, lehetővé téve annak megadását, hogy kik és mely gépek hozhatnak létre egy objektumot, és hívhatják meg a metódusait.

COM+

A Microsoft Transaction Server még 1997-ben szerepelt a Windows NT4 Option Pack csomagjában.

A Windows 2000 kiadta a COM+ technológiát, amely a Microsoft Transaction Server új verziója volt.

A technológia felhatalmazta a COM-összetevők fejlesztőit azáltal, hogy néhány kész szolgáltatást biztosított számukra, mint például:

Az MTS/COM+-t az MS IIS webszerver számos verziójában használták webalkalmazások betöltésére és futtatására, mind az ISAPI technológiát használó binárisan, mind az ASP technológiával szkriptezett (az asp.dll maga egy ISAPI alkalmazás).

A COM+ az összetevőket úgynevezett COM+ alkalmazásokba köti össze, megkönnyítve az összetevők adminisztrálását és karbantartását. A COM+ fejlesztésének fő területei a biztonság és a teljesítmény. A COM+ mögött meghúzódó ötletek egy részét a Microsoft .NET -ben is megvalósították .

.NET és a COM jövője

2002 - ben hivatalosan is megjelent a Microsoft .NET platform , amelyet ma a Microsoft a Windows-alkalmazások és -komponensek létrehozásának ajánlott keretrendszereként nyilvánít. Emiatt a .NET olyan eszközöket is tartalmaz, amelyek lehetővé teszik a COM-összetevők elérését .NET -alkalmazásokból , és fordítva. A Microsoft szerint a COM (pontosabban a COM+) és a .NET kiváló kiegészítő technológia.

DCOM az interneten keresztül és az XP SP2 probléma megoldása

2009-ben a DComLab kiadta a ComBridge kereskedelmi terméket. Ha a ComBridge-t DCOM-on keresztül használja az interneten keresztül, akkor nincs szükség CIS-re, nincs szükség a 135-ös portra, és nincs szükség dcomcnfg-beállításokra a helyi hálózaton. A ComBridge a DCOM szállítási rétegbe van beépítve, teljesen elkülönítve a létrehozott objektum és az onnan fogadott objektumok összes forgalmát egy külön folyamba.

OPC

Az OPC (OLE for Process Control) olyan szoftvertechnológiák családja, amelyek egyetlen interfészt biztosítanak az automatizálási objektumok és technológiai folyamatok kezelésére. Az OPC protokollok nagy része Windows technológián alapul: OLE, ActiveX, COM/DCOM. Az OPC protokollok, mint például az OPC XML DA és az OPC UA platformfüggetlenek.

OLE

Az OLE ( Object Linking and Embedding "  objektum csatolása és beágyazása"; ejtsd: [oh-lay], [oley]) a Microsoft által kifejlesztett technológia az objektumok összekapcsolására és beágyazására más dokumentumokba és objektumokba.

Az OLE lehetővé teszi, hogy a munka egy részét átvigye egyik szerkesztőprogramból a másikba, és visszaküldje az eredményeket. Például egy személyi számítógépre telepített kiadói rendszer szöveget küldhet feldolgozásra egy szövegszerkesztőbe, vagy néhány képet egy képszerkesztőbe OLE technológia segítségével.

Jegyzetek

  1. COM technológia . Letöltve: 2022. január 26. Az eredetiből archiválva : 2022. január 26..
  2. COM+ alkalmazások kezelése . Microsoft TechNet . Microsoft Corp. (2013. február 22.). Letöltve: 2018. augusztus 31. Az eredetiből archiválva : 2012. január 23.
  3. Eltávolított vagy elavult funkciók a Windows Server 2012 R2 rendszerben . Microsoft TechNet . Microsoft Corp. (2016. augusztus 31.). Letöltve: 2018. augusztus 31. Az eredetiből archiválva : 2015. február 8..

Linkek

Irodalom