Objektový model komponenty
Model COM (Microsoft Component Object Model) je systém nezávislý na platformě, distribuovaný objektově orientovaný systém pro vytváření binárních softwarových komponent, které mohou interagovat. COM je základní technologie pro ole (složené dokumenty Společnosti Microsoft), ActiveX (komponenty s podporou internetu) a další.
Pro pochopení modelu COM (a tedy všech technologií založených na modelu COM) je důležité pochopit, že se nejedná o objektově orientovaný jazyk, ale standard. Ani com neuvádí, jak by měla být aplikace strukturována; Podrobnosti o jazyku, struktuře a implementaci zůstanou vývojáři aplikací. Com místo toho určuje objektový model a programovací požadavky, které umožňují objekty MODELU COM (označované také jako komponenty modelu COM, nebo někdy jednoduše objekty) pro interakci s jinými objekty. Tyto objekty mohou být v rámci jednoho procesu, v jiných procesech a mohou být dokonce na vzdálených počítačích. Mohou být napsány v různých jazycích a mohou být strukturálně poměrně odlišné, což je důvod, proč COM je označována jako binární standard; standard, který se použije po přeložení programu do binárního strojového kódu.
Jediným požadavkem modelu COM je, že kód je generován v jazyce, který může vytvářet struktury ukazatelů a explicitně nebo implicitně volat funkce prostřednictvím ukazatelů. Objektově orientované jazyky, jako jsou C++ a Smalltalk, poskytují programovací mechanismy, které zjednodušují implementaci objektů MODELU COM, ale jazyky, jako jsou C, Java a VBScript, lze použít k vytváření a používání objektů MODELU COM.
COM definuje základní povahu objektu COM. Obecně platí, že softwarový objekt je tvořen sadou dat a funkcemi, které manipulují s daty. Objekt COM je objekt, ve kterém se přístup k datům objektu dosahuje výhradně prostřednictvím jedné nebo více sad souvisejících funkcí. Tyto sady funkcí se nazývají rozhranía funkce rozhraní se nazývají metody. Com dále vyžaduje, aby jediný způsob, jak získat přístup k metodám rozhraní, je prostřednictvím ukazatele na rozhraní.
Kromě určení základních binárních objektových standardů COM definuje některá základní rozhraní, která poskytují funkce společné všem technologiím založeným na COM, a nabízí několik funkcí, které všechny komponenty vyžadují. Com také definuje, jak objekty spolupracují v distribuovaném prostředí a přidaly funkce zabezpečení, které pomáhají poskytovat integritu systému a komponent.
Následující témata v této části popisují základní problémy modelu COM související s návrhem objektů COM:
- Objekty a rozhraní COM
- použití a implementace IUnknown
- Opětovné použití objektů
- Knihovna COM
- Správa přidělování paměti