SlideShare uma empresa Scribd logo
1 de 27
UNIDAD IV 
JUAN ÁNGEL CAMPOS BRAVO 
YUNUEN SORIANO MARTINEZ 
VERONICA RAMIREZ CASTRO 
FELIPE CAZARES BALBUENA 
INGENIERÍA INFORMÁTICA 
MATERIA:PROGAMACION AMBIENTE CLIENTE SERVIDOR 
. 
COM/DCOM
COM/DCOM (COMPONENT 
OBJECT MODEL/ 
DISTRIBUTED 
COM) 
AUTOMATIZACIÓN.
DCOM/COM 
• Modelo de Objetos de Componentes Distribuidos .Es una tecnología 
propietaria de Microsoft para desarrollar componentes software distribuidos 
sobre varios ordenadores y que se comunican entre sí. Extiende el modelo 
COM de Microsoft y proporciona el sustrato de comunicación entre la 
infraestructura del servidor de aplicaciones COM+ de Microsoft. Ha sido 
abandonada en favor del framework .NET.
DCOM/COM 
• La adición de la "D" a COM fue debido al uso extensivo de DCE/RPC(llamada a 
procedimiento remoto ), o más específicamente la versión mejorada de Microsoft, 
conocida como MSRPC. 
• En términos de las extensiones que añade a COM, DCOM tenía que resolver los 
problemas de 
• Aplanamiento - Serializar y deserializar los argumentos y valores de retorno de las 
llamadas a los métodos "sobre el cable". 
• Recolección de basura distribuida, asegurándose que las referencias mantenidas por 
clientes de las interfaces sean liberadas cuando, por ejemplo, el proceso cliente ha 
caído o la conexión de red se pierde.
• En el contexto del Component Object Model (y 
derivados) se refiere a la capacidad de poder crear componentes COM que 
tengan la capacidad de ser usados sin necesidad de conocer los nombres y 
parámetros de los métodos, de antemano. Esto sirve para que lenguajes 
como Visual Basic o los de scripting (VBScript, JScript) puedan invocar 
estos componentes mediante un valor numérico (algo así como "método 
uno", "método dos", etc). Esto se logra mediante los archivos idl/odl y 
la implementación de la interfaz IDispatch.
*Cuando un componente tiene un subproceso de ejecución, se puede ejecutar 
el código fuente de un solo objeto a la vez. 
*La característica de automatización del Modelo de objetos componentes 
(Component Object Model, COM) controla esta situación mediante 
la serialización de las peticiones. Es decir, las peticiones se sitúan en una cola y 
se procesan una por una hasta terminar todas. 
*En un entorno operativo de subprocesamiento múltiple, la serialización evita 
que los objetos de un solo subproceso se superpongan a las peticiones de 
clientes: es decir, que se ejecute el código de una propiedad o método mientras 
se esté ejecutando una o varias peticiones de clientes.
• *. La superposición de las peticiones puede causar errores internos de datos si 
los objetos no están diseñados para reentrada. 
• Por lo tanto, la serialización es una característica muy importante de la 
automatización. No obstante, la serialización de componentes de un solo 
subproceso implica que, algunas veces, las peticiones se bloquean. 
• Cuando las operaciones largas bloquean otras cortas, la productividad 
disminuye y la frustración del usuario aumenta. Los componentes que se 
comportan de esta manera se denominan poco escalables. Es decir, no 
funcionan bien si se realizan muchas peticiones de diferente duración.
ATL 
(ACTIVE TEMPLANTE LIBRARY)
ATL (ACTIVE TÉMPLATE LIBRARY) 
El Active Témplate Library (ATL) es un conjunto de clases basadas en plantillas de C ++ clases desarrolladas 
por Microsoft , destinado a simplificar la programación del Modelo de objetos componentes (COM) de 
objetos. 
Es un conjunto de clases de C++ basadas en plantillas que permiten crear objetos pequeños, rápidos 
(COM) del modelo de objetos componentes.
El apoyo COM en Microsoft Visual C ++ permite a los desarrolladores crear una variedad de objetos COM, OLE 
Automation servidores y ActiveX controles. 
ATL incluye un asistente de objeto que establece la estructura primaria de los objetos muy rápidamente con un 
mínimo de codificación manual. 
En el lado del cliente COM ATL proporciona punteros inteligentes que tienen que ver con el recuento de 
referencias COM.
HISTORIA 
ATL versión7 introdujo atributos en C ++ en un intento de ofrecer algo similar a los atributos de la CLI, no han tenido 
mucho éxito, y se han restado importancia en la versión de ATL 8 (Visual Studio 2005). La versión7 introduce nuevas 
clases de conversión de cadenas. 
El 28 de julio de 2009, Microsoft lanzó un parche para ATL para corregir un error que podría permitir ActiveX 
controles creados con ATL a ser vulnerable a una falla de seguridad de ejecución remota de código. 
Desde Visual Studio 2013, código de ATL en Visual C ++ 2013 es estática, lo que elimina la DLL
CLASES DE APOYO 
ATL incluye muchas RAII clases para simplificar la gestión de tipos COM. 
Las clases más comúnmente utilizados son: 
•CComPtr <T> de propósito general Smart-puntero, 
•CComBSTR envoltorio BSTR, 
•CComVariant envoltorio VARIANTE, y 
•CComSafeArray <T> envoltorio SAFEARRAY.
APOYO COMPILER COM 
Aunque no es formalmente parte de ATL, Microsoft Visual C ++ también incluye adicional de C ++ clases RAII para simplificar la 
gestión de tipos COM. 
Estos apoyo compilador COM clases pueden ser utilizados como reemplazo para o en combinación con ATL, e incluye: 
• _com_ptr_t smart-puntero que decora el nombre de la interfaz COM con un sufijo "PTR", 
• _bstr_t envoltorio BSTR, 
• _variant_t envoltorio VARIANTE, y 
• _com_error [ 1envoltorio HRESULT. 
Tenga en cuenta que a partir de Visual Studio 2012, las clases de apoyo compilador COM no incluye una envoltura SAFEARRAY
DCOM 
DISTRIBUTED COMPONENT OBJECT 
MODEL 
MODELO DE OBJETOS DE COMPONENTES DISTRIBUIDOS
• Para soportar comunicación entre objetos en ordenadores distintos, en una LAN, WAN, o incluso en 
Internet. Con DCOM una aplicación puede ser distribuida en lugares que dan más sentido al cliente y a 
la aplicación.
• DCOM es una evolución lógica de COM, se pueden utilizar los componentes creados en aplicaciones 
basadas en COM, y trasladarlas a entornos distribuidos. DCOM maneja detales muy bajos de protocolos 
de red, por lo que uno se puede centrar en la realidad de los negocios: proporcionar soluciones a 
clientes.
ARQUITECTURA DCOM 
• es una extensión de COM, y éste define como los componentes y sus clientes interactúan entre sí. Esta 
interacción es definida de tal manera que el cliente y el componente puede conectar sin la necesidad de un 
sistema intermedio. El cliente llama a los métodos del componente sin tener que preocuparse de niveles más 
complejos.
• En los actuales sistemas operativos, los procesos están separados unos de otros. Un cliente que necesita 
comunicarse con un componente en otro proceso no puede llamarlo directamente, y tendrá que utilizar 
alguna forma de comunicación entre procesos que proporcione el sistema operativo.
• COM proporciona este tipo de comunicación de una forma transparente: intercepta las llamadas del 
cliente y las reenvía al componente que está en otro proceso. La Figura 2 ilustra como las librería de 
COM/DCOM proporcionan la forma de comunicar el cliente y el componente.
• Cuando el cliente y el componente residen en distintas máquinas, DCOM simplemente reemplaza la 
comunicación entre procesos locales por un protocolo de red. Ni el cliente ni el componente se enteran 
de que la unión que los conecta es ahora un poco más grande.
• Las librería de COM proporcionan servicios orientados a objetos a los clientes y componentes, y utilizan 
RPC y un proveedor de seguridad para generar paquetes de red estándar que entienda el protocolo 
estándar de DCOM.
COMPONENTES Y SU REUTILIZACIÓN 
• Muchas aplicaciones distribuidas no están desarrolladas. 
• DCOM toma ventaja directa y transparente de los componentes COM y herramientas ya existentes. 
• Reducir el tiempo de desarrollo integrando soluciones estandarizadas en las aplicaciones de usuario.
INDEPENDENCIA DE LA LOCALIZACIÓN 
• Cuando se comienza a implementar una aplicación distribuida en una red local, aparecen distintos 
conflictos en el diseño. 
• Los componentes que interactuan más a menudo deberian estar localizados más cerca. 
• Algunos componentes solo pueden ser ejecutados en máquinas específicas o lugares específicos.
• Los componentes más pequeños aumentan la flexibilidad, pero aumentan el tráfico de red. 
• Los componentes grandes reducen el tráfico de red, pero también reducen la flexibilidad.
• La independencia de localización en DCOM simplifica enormemente las tarea de los componentes de 
aplicaciones distribuidas para alcanzar un nivel de funcionamiento óptimo. 
• Con la independencia de localización de DCOM, la aplicación puede combinar componentes 
relacionados en máquinas "cercanas" entre si, en una sola máquina o incluso en el mismo proceso.
INDEPENDENCIA DEL LENGUAJE DE PROGRAMACIÓN 
• Como una extensión de COM, DCOM es completamente independiente del lenguaje. Virtualmentem 
cualquier lenguaje puede ser utilizado para crear componentes COM, y estos componentes puede ser 
utilizado por muchos más lenguajes y herramientas. Java, Microsoft Visual C++, Microsoft Visual Basic, 
Delphi, PowerBuilder, y Micro Focus COBOL interactuan perfectamente con DCOM.
INDEPENDENCIA DEL PROTOCOLO 
• DCOM puede utilizar cualquier protocolo de transporte, como TCP/IP, UDP, IPX/SPX y NetBIOS. DCOM 
proporciona un marco de seguridad a todos estos protocolos. 
• Los desarrolladores pueden simplemente utilizar las características proporcionadas por DCOM y asegurar que sus 
aplicaciones son completamente independiente del protocolo.

Mais conteúdo relacionado

Semelhante a Com

Unidad 4
Unidad 4Unidad 4
Unidad 4
mi casa
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
Jaziel Torres
 
Introducción-a-Microsoft.NET-[parte2]
Introducción-a-Microsoft.NET-[parte2]Introducción-a-Microsoft.NET-[parte2]
Introducción-a-Microsoft.NET-[parte2]
Kevin Reaño
 
Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#
José García
 
Lenguaje De ProgramacióN C
Lenguaje De ProgramacióN CLenguaje De ProgramacióN C
Lenguaje De ProgramacióN C
jengibre
 

Semelhante a Com (20)

Unidad 4
Unidad 4Unidad 4
Unidad 4
 
Tecnologías de Desarrollo de Sistemas Distribuidos basados en Objetos
Tecnologías de Desarrollo de Sistemas Distribuidos basados en ObjetosTecnologías de Desarrollo de Sistemas Distribuidos basados en Objetos
Tecnologías de Desarrollo de Sistemas Distribuidos basados en Objetos
 
Com521
Com521Com521
Com521
 
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos 7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
7-Unidad 2: Diseños de Vista-2.3 Introducción Web Services-Desarrollo Ejemplos
 
3-Unidad 1. Arquitectura de Diseño
3-Unidad 1. Arquitectura de Diseño3-Unidad 1. Arquitectura de Diseño
3-Unidad 1. Arquitectura de Diseño
 
Mc silverlight2 dia1
Mc silverlight2 dia1Mc silverlight2 dia1
Mc silverlight2 dia1
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Migracion a Visual Basic .NET
Migracion a Visual Basic .NETMigracion a Visual Basic .NET
Migracion a Visual Basic .NET
 
Plataforma net
Plataforma netPlataforma net
Plataforma net
 
Dcom visualC++
Dcom visualC++Dcom visualC++
Dcom visualC++
 
Introducción-a-Microsoft.NET-[parte2]
Introducción-a-Microsoft.NET-[parte2]Introducción-a-Microsoft.NET-[parte2]
Introducción-a-Microsoft.NET-[parte2]
 
ASP.NET MVC (2011)
ASP.NET MVC (2011)ASP.NET MVC (2011)
ASP.NET MVC (2011)
 
Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#
 
Csharp
CsharpCsharp
Csharp
 
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxEFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
 
Desarrollo De Componentes Com
Desarrollo De Componentes ComDesarrollo De Componentes Com
Desarrollo De Componentes Com
 
UNIDAD 1 TEMA 2.pptx
UNIDAD 1 TEMA 2.pptxUNIDAD 1 TEMA 2.pptx
UNIDAD 1 TEMA 2.pptx
 
Unidad_1.pdf
Unidad_1.pdfUnidad_1.pdf
Unidad_1.pdf
 
Lenguaje De ProgramacióN C
Lenguaje De ProgramacióN CLenguaje De ProgramacióN C
Lenguaje De ProgramacióN C
 
presenjava.ppt
presenjava.pptpresenjava.ppt
presenjava.ppt
 

Último

CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptx
bingoscarlet
 
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
vladimirpaucarmontes
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
Ricardo705519
 
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptxsigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sutti0808
 

Último (20)

CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptx
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdfMODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
MODIFICADO - CAPITULO II DISEÑO SISMORRESISTENTE DE VIGAS Y COLUMNAS.pdf
 
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
analisis tecnologico( diagnostico tecnologico, herramienta de toma de deciones)
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
UNIDAD II 2.pdf ingenieria civil lima upn
UNIDAD  II 2.pdf ingenieria civil lima upnUNIDAD  II 2.pdf ingenieria civil lima upn
UNIDAD II 2.pdf ingenieria civil lima upn
 
introducción a las comunicaciones satelitales
introducción a las comunicaciones satelitalesintroducción a las comunicaciones satelitales
introducción a las comunicaciones satelitales
 
clasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias localesclasificasion de vias arteriales , vias locales
clasificasion de vias arteriales , vias locales
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdfJM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
 
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdfTIPOS DE SOPORTES - CLASIFICACION IG.pdf
TIPOS DE SOPORTES - CLASIFICACION IG.pdf
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptx
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajas
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
Desigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfDesigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdf
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptxsigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
sigof.sisfoh.gob.pe_consulta_hogares_ULE_busqueda_print.php (1).pptx
 
MANTENIBILIDAD Y CONFIABILIDAD DE LOS SISTEMAS MECANICOS
MANTENIBILIDAD Y CONFIABILIDAD DE LOS SISTEMAS MECANICOSMANTENIBILIDAD Y CONFIABILIDAD DE LOS SISTEMAS MECANICOS
MANTENIBILIDAD Y CONFIABILIDAD DE LOS SISTEMAS MECANICOS
 

Com

  • 1. UNIDAD IV JUAN ÁNGEL CAMPOS BRAVO YUNUEN SORIANO MARTINEZ VERONICA RAMIREZ CASTRO FELIPE CAZARES BALBUENA INGENIERÍA INFORMÁTICA MATERIA:PROGAMACION AMBIENTE CLIENTE SERVIDOR . COM/DCOM
  • 2. COM/DCOM (COMPONENT OBJECT MODEL/ DISTRIBUTED COM) AUTOMATIZACIÓN.
  • 3. DCOM/COM • Modelo de Objetos de Componentes Distribuidos .Es una tecnología propietaria de Microsoft para desarrollar componentes software distribuidos sobre varios ordenadores y que se comunican entre sí. Extiende el modelo COM de Microsoft y proporciona el sustrato de comunicación entre la infraestructura del servidor de aplicaciones COM+ de Microsoft. Ha sido abandonada en favor del framework .NET.
  • 4. DCOM/COM • La adición de la "D" a COM fue debido al uso extensivo de DCE/RPC(llamada a procedimiento remoto ), o más específicamente la versión mejorada de Microsoft, conocida como MSRPC. • En términos de las extensiones que añade a COM, DCOM tenía que resolver los problemas de • Aplanamiento - Serializar y deserializar los argumentos y valores de retorno de las llamadas a los métodos "sobre el cable". • Recolección de basura distribuida, asegurándose que las referencias mantenidas por clientes de las interfaces sean liberadas cuando, por ejemplo, el proceso cliente ha caído o la conexión de red se pierde.
  • 5. • En el contexto del Component Object Model (y derivados) se refiere a la capacidad de poder crear componentes COM que tengan la capacidad de ser usados sin necesidad de conocer los nombres y parámetros de los métodos, de antemano. Esto sirve para que lenguajes como Visual Basic o los de scripting (VBScript, JScript) puedan invocar estos componentes mediante un valor numérico (algo así como "método uno", "método dos", etc). Esto se logra mediante los archivos idl/odl y la implementación de la interfaz IDispatch.
  • 6. *Cuando un componente tiene un subproceso de ejecución, se puede ejecutar el código fuente de un solo objeto a la vez. *La característica de automatización del Modelo de objetos componentes (Component Object Model, COM) controla esta situación mediante la serialización de las peticiones. Es decir, las peticiones se sitúan en una cola y se procesan una por una hasta terminar todas. *En un entorno operativo de subprocesamiento múltiple, la serialización evita que los objetos de un solo subproceso se superpongan a las peticiones de clientes: es decir, que se ejecute el código de una propiedad o método mientras se esté ejecutando una o varias peticiones de clientes.
  • 7. • *. La superposición de las peticiones puede causar errores internos de datos si los objetos no están diseñados para reentrada. • Por lo tanto, la serialización es una característica muy importante de la automatización. No obstante, la serialización de componentes de un solo subproceso implica que, algunas veces, las peticiones se bloquean. • Cuando las operaciones largas bloquean otras cortas, la productividad disminuye y la frustración del usuario aumenta. Los componentes que se comportan de esta manera se denominan poco escalables. Es decir, no funcionan bien si se realizan muchas peticiones de diferente duración.
  • 9. ATL (ACTIVE TÉMPLATE LIBRARY) El Active Témplate Library (ATL) es un conjunto de clases basadas en plantillas de C ++ clases desarrolladas por Microsoft , destinado a simplificar la programación del Modelo de objetos componentes (COM) de objetos. Es un conjunto de clases de C++ basadas en plantillas que permiten crear objetos pequeños, rápidos (COM) del modelo de objetos componentes.
  • 10. El apoyo COM en Microsoft Visual C ++ permite a los desarrolladores crear una variedad de objetos COM, OLE Automation servidores y ActiveX controles. ATL incluye un asistente de objeto que establece la estructura primaria de los objetos muy rápidamente con un mínimo de codificación manual. En el lado del cliente COM ATL proporciona punteros inteligentes que tienen que ver con el recuento de referencias COM.
  • 11. HISTORIA ATL versión7 introdujo atributos en C ++ en un intento de ofrecer algo similar a los atributos de la CLI, no han tenido mucho éxito, y se han restado importancia en la versión de ATL 8 (Visual Studio 2005). La versión7 introduce nuevas clases de conversión de cadenas. El 28 de julio de 2009, Microsoft lanzó un parche para ATL para corregir un error que podría permitir ActiveX controles creados con ATL a ser vulnerable a una falla de seguridad de ejecución remota de código. Desde Visual Studio 2013, código de ATL en Visual C ++ 2013 es estática, lo que elimina la DLL
  • 12. CLASES DE APOYO ATL incluye muchas RAII clases para simplificar la gestión de tipos COM. Las clases más comúnmente utilizados son: •CComPtr <T> de propósito general Smart-puntero, •CComBSTR envoltorio BSTR, •CComVariant envoltorio VARIANTE, y •CComSafeArray <T> envoltorio SAFEARRAY.
  • 13. APOYO COMPILER COM Aunque no es formalmente parte de ATL, Microsoft Visual C ++ también incluye adicional de C ++ clases RAII para simplificar la gestión de tipos COM. Estos apoyo compilador COM clases pueden ser utilizados como reemplazo para o en combinación con ATL, e incluye: • _com_ptr_t smart-puntero que decora el nombre de la interfaz COM con un sufijo "PTR", • _bstr_t envoltorio BSTR, • _variant_t envoltorio VARIANTE, y • _com_error [ 1envoltorio HRESULT. Tenga en cuenta que a partir de Visual Studio 2012, las clases de apoyo compilador COM no incluye una envoltura SAFEARRAY
  • 14. DCOM DISTRIBUTED COMPONENT OBJECT MODEL MODELO DE OBJETOS DE COMPONENTES DISTRIBUIDOS
  • 15. • Para soportar comunicación entre objetos en ordenadores distintos, en una LAN, WAN, o incluso en Internet. Con DCOM una aplicación puede ser distribuida en lugares que dan más sentido al cliente y a la aplicación.
  • 16. • DCOM es una evolución lógica de COM, se pueden utilizar los componentes creados en aplicaciones basadas en COM, y trasladarlas a entornos distribuidos. DCOM maneja detales muy bajos de protocolos de red, por lo que uno se puede centrar en la realidad de los negocios: proporcionar soluciones a clientes.
  • 17. ARQUITECTURA DCOM • es una extensión de COM, y éste define como los componentes y sus clientes interactúan entre sí. Esta interacción es definida de tal manera que el cliente y el componente puede conectar sin la necesidad de un sistema intermedio. El cliente llama a los métodos del componente sin tener que preocuparse de niveles más complejos.
  • 18. • En los actuales sistemas operativos, los procesos están separados unos de otros. Un cliente que necesita comunicarse con un componente en otro proceso no puede llamarlo directamente, y tendrá que utilizar alguna forma de comunicación entre procesos que proporcione el sistema operativo.
  • 19. • COM proporciona este tipo de comunicación de una forma transparente: intercepta las llamadas del cliente y las reenvía al componente que está en otro proceso. La Figura 2 ilustra como las librería de COM/DCOM proporcionan la forma de comunicar el cliente y el componente.
  • 20. • Cuando el cliente y el componente residen en distintas máquinas, DCOM simplemente reemplaza la comunicación entre procesos locales por un protocolo de red. Ni el cliente ni el componente se enteran de que la unión que los conecta es ahora un poco más grande.
  • 21. • Las librería de COM proporcionan servicios orientados a objetos a los clientes y componentes, y utilizan RPC y un proveedor de seguridad para generar paquetes de red estándar que entienda el protocolo estándar de DCOM.
  • 22. COMPONENTES Y SU REUTILIZACIÓN • Muchas aplicaciones distribuidas no están desarrolladas. • DCOM toma ventaja directa y transparente de los componentes COM y herramientas ya existentes. • Reducir el tiempo de desarrollo integrando soluciones estandarizadas en las aplicaciones de usuario.
  • 23. INDEPENDENCIA DE LA LOCALIZACIÓN • Cuando se comienza a implementar una aplicación distribuida en una red local, aparecen distintos conflictos en el diseño. • Los componentes que interactuan más a menudo deberian estar localizados más cerca. • Algunos componentes solo pueden ser ejecutados en máquinas específicas o lugares específicos.
  • 24. • Los componentes más pequeños aumentan la flexibilidad, pero aumentan el tráfico de red. • Los componentes grandes reducen el tráfico de red, pero también reducen la flexibilidad.
  • 25. • La independencia de localización en DCOM simplifica enormemente las tarea de los componentes de aplicaciones distribuidas para alcanzar un nivel de funcionamiento óptimo. • Con la independencia de localización de DCOM, la aplicación puede combinar componentes relacionados en máquinas "cercanas" entre si, en una sola máquina o incluso en el mismo proceso.
  • 26. INDEPENDENCIA DEL LENGUAJE DE PROGRAMACIÓN • Como una extensión de COM, DCOM es completamente independiente del lenguaje. Virtualmentem cualquier lenguaje puede ser utilizado para crear componentes COM, y estos componentes puede ser utilizado por muchos más lenguajes y herramientas. Java, Microsoft Visual C++, Microsoft Visual Basic, Delphi, PowerBuilder, y Micro Focus COBOL interactuan perfectamente con DCOM.
  • 27. INDEPENDENCIA DEL PROTOCOLO • DCOM puede utilizar cualquier protocolo de transporte, como TCP/IP, UDP, IPX/SPX y NetBIOS. DCOM proporciona un marco de seguridad a todos estos protocolos. • Los desarrolladores pueden simplemente utilizar las características proporcionadas por DCOM y asegurar que sus aplicaciones son completamente independiente del protocolo.