Component-Object-Model

Bei dem Component-Object-Model (COM) von Microsoft handelt sich um modulare, objektorientierte Softwarekomponenten. Diese können von jeder COM-kompatiblen Anwendung genutzt werden. Mit dieser Technologie soll dem Microsoft-Betriebssystem  Windows ermöglicht werden, Interprozesskommunikation und dynamische Objekterzeugung zu betreiben. In COM-kompatiblen Applikationen können COM-Komponenten eingefügt und auch während der Laufzeit wieder entfernt werden.  COM-Objekte können lauffähige Programme sein oder eine Programmbibliothek (Dynamic Link Library (DLL)). Das Component Object Model ermöglicht dem Entwickler sprachunabhängig (Binärstandard), plattformunabhängig, objektorientiert,  versionsunabhängig, automatisiert und ortsunabhängig zu programmieren. Eine COM-Komponente erhält nach der Registrierung bei Microsoft eine weltweit eindeutige Nummer. Meist  werden COM-Komponenten in C++ programmiert. Folgende Technologien basieren auf COM-Komponenten: DirectX, ActiveX und OLE. COM wurde 1993 unter der Bezeichnung Object Linking and Embedding (OLE) in Windows integriert.  Die Bezeichnung COM wurde erst 1997 verwendet. COM wurde durch das .NET Framework 3.0 abgelöst. Das .NET-Framework 3.0 ist einfacher und universeller: es gibt keine unterschiedlichen Zugänge mehr zu einem Objekt, jeder .NET-Client kann  jede .NET-Komponente nutzen. Es wird weniger mit Schnittstellen als mit Klassen sowie Klassen mit Mehrfachschnittstellen gearbeitet. Statt DCOM wird für Remote Services .NET Remoting mit HTTP/SOAP und HTTP/binär verwendet. Die Klasse XML-Webservices  bietet Methoden an, um einen Web-Server via HTTP/SOAP oder XML/SOAP (Simple Object Access Protocol) aufzurufen. Die Plattformunabhängigkeit ist bei dem .NET Framework durch die Übersetzung des Codes der  unterstützenden Programmiersprachen in einen Zwischencode, der Common Intermediate Language (CIL) gegeben. Dieser Zwischencode wird zur Laufzeit von einem Echtzeit-Compiler (Just-in-Time-Compiler) in  Maschinencode übersetzt, und dabei für die jeweilige Plattform und den Prozessortyp optimiert.                                       
Siehe auch:    COM-Plus   OLE   ActiveX   DirectX   C-Plus-Plus   Microsoft   windows   ADO   CORBA