La biblioteca de plantillas
activa (ATL) es un conjunto de clases de C ++ basadas en plantillas
desarrolladas por Microsoft , destinadas a simplificar la programación de
objetos COM ( Component Object Model ). El soporte COM en Microsoft Visual C ++
permite a los desarrolladores crear una variedad de objetos COM, servidores de
automatización OLE y controles ActiveX . ATL incluye un asistente de objetos
que configura la estructura primaria de los objetos rápidamente con un mínimo
de codificación manual. En el lado del cliente COM ATL proporciona punteros
inteligentes que se ocupan de conteo de referencia COM. La biblioteca hace un
uso intensivo del patrón de plantilla Curiosamente recurrente .
HISTORIA
Los objetos COM también se
pueden crear con Microsoft Foundation Classes (MFC), pero esto conduce a
binarios más grandes que requieren soporte DLL . ATL, por otro lado, es una
alternativa más ligera en situaciones donde las partes gráficas de interfaz de
usuario de MFC no son necesarias.
En la versión 7 de ATL
(Visual Studio 2003), que tuvo éxito directo con la versión 3 (Visual Studio
6.0), varias clases MFC como CString se pusieron a disposición en ATL o más
exactamente se trasladaron a una capa común ATLMFC que es compartida por ambas
bibliotecas. ATL versión 7 también introdujo atributos en C + + en un intento
de proporcionar algo similar a los atributos de CLI , sin embargo estos no han
sido particularmente exitosos, y han sido desestimados en ATL versión 8 (Visual
Studio 2005); Los distintos asistentes ya no los generan de forma
predeterminada. La versión 7 también introdujo nuevas clases de conversión de
cadenas.
El 28 de julio de 2009,
Microsoft lanzó un parche a ATL para corregir un error que podría permitir que
los controles ActiveX creados con ATL sean vulnerables a una falla de seguridad
de ejecución remota de código.
Desde Visual Studio 2013,
código ATL en Visual C ++ 2013 es estático, eliminando la DLL.
No hay comentarios:
Publicar un comentario