Component object model

Solo disponible en BuenasTareas
  • Páginas : 5 (1237 palabras )
  • Descarga(s) : 0
  • Publicado : 18 de febrero de 2011
Leer documento completo
Vista previa del texto
Component Object Model
Component Object Model (COM) es una plataforma de Microsoft para componentes de software introducida por dicha empresa en 1993. Esta plataforma es utilizada para permitir la comunicación entre procesos y la creación dinámica de objetos, en cualquier lenguaje de programación que soporte dicha tecnología. El término COM es a menudo usado en el mundo del desarrollo desoftware como un término que abarca las tecnologías OLE, OLE Automation, ActiveX, COM+ y DCOM. Si bien COM fue introducido en 1993, Microsoft no hizo énfasis en el nombre COM hasta 1997.
* DCOM al igual que CORBA separa la interface del objeto de su implementación.
* Microsoft IDL está basado en DCE (con compatible con CORBA)
* Microsoft también provee un IDL para OLE automation, llamado ODL.* IDL y ODL están incluídos en NT 4.0
* DCOM no soporta herencia múltiple
* DCOM pueden soportar múltiples interfaces por componente
* DCOM logra el reuso vía confinamiento y agregación en vez de herencia.
* Un objeto DCOM no es un objeto en el sentido de O.O.
* Interfaces DCOM NO tienen estado y no pueden ser instanciados para crear una única referencia a objeto.
*Una interface DCOM es simplemente un grupo de funciones relacionadas
* Al igual que CORBA, DCOM provee interfaces estáticas y dinámicas.
Interfaces
* Una interface DCOM es una colección de llamadas a funciones.
* Interfaces independientes de la implementación.
* DCOM define interoperabilidad binaria para cómo ingresar a su interface usando punteros y proxies remotos.
* Unainterface DCOM es definida como una API binaria de bajo nivel basado en una tabla de apuntadores.
* Para acceder una interface, los clientes DCOM utilizan punteros a un arreglo de funciones conocida como virtual table (vtable).
* En tiempo de ejecución cada interface es única identificada mediante Interface Identifier (IID)
* Un IID es un GUID generado para las interfaces DCOM
* GUIDson únicos de 128 bits
* El IID permite a un cliente preguntar por un objeto que soporte una interface.
* Clientes hacen consultas a través de la función QueryInterface que todos los objetos soporta a través de la interface Iunknown

Objetos Dcom

* Un objeto DCOM es un componente que soporta una o más interfaces.
* Un objeto DCOM es una instancia en ejecución de una clase.
*Los clientes siempre tratan con objetos DCOM a través de punteros, nunca se accede directamente.
* Todos los objetos DCOM tienen que implementar la interface IUnknown a través de la cual se controla el ciclo de vida de un objeto.
* Se utiliza IUnkown para consultar un objeto acerca de sus interface y métodos y obtener un puntero a ellas.´
Arquitectura
* DCOM es una extension delmodelo Component Object Model (COM).
* COM define cómo los componentes y clientes interactuan entre sí.
* Cliente y componente pueden conectarse sin ningun intermediario.
* En un sistema operativo la comunicación entre dos o mas procesos diferentes debe implementar librerias o funciones de IPC.
* COM provee esta comunicación de manera transparente: intercepta llamadas desde el clientey las redirecciona al compomente.
* Cuando el cliente y el componente se encunetran en maquinas diferentes DCOM reemplaza el IPC local por una comunicación via red.
* Ni el cliente ni el componente saben que la comunicación entre ambos se hace sea via red o local (IPC).
Servidor
* Un servidor DCOM es un código (dll, exe, class) que contiene uno o más clases de objeto con su propioCLSID.
* Los clientes preguntan por un objeto dado su CLSID, DCOM carga el código servidor y pregunta a éste por la creación de tal objeto.
* El servidor tiene que proveer una clase factory para crear un nuevo objeto.
* Una vez el objeto es creado, un puntero a su interface principal es retornada al cliente.
* Un servidor DCOM provee la estructura necesaria alrededor de un objeto...
tracking img