- Active Template Library
-
Bei der Active Template Library (ATL) handelt es sich um eine Sammlung von Visual C++-Klassenbibliotheken für Microsoft-Windows zur Erstellung und Nutzung von COM-Komponenten, einschließlich ActiveX-Steuerelementen. Der Namensbestandteil Template rührt von der ausgiebigen Nutzung von C++-Templates her. Im Vergleich zu unter Verwendung der MFC generierten Programmen sind die mit ATL erzeugten Komponenten kleiner und damit schneller über das Internet zu laden. Wie bei der Nutzung von Klassenbibliotheken üblich, erfolgt die Verwendung der ATL über das Einbinden der Header-Dateien und Linken mit den eigentlichen Bibliothek-Binärdateien. Visual C++ bietet jedoch spezielle ATL-Projektvorlagen, bei denen die Einbindung bereits vorgegeben ist. Es handelt sich um ein kommerzielles Produkt von Microsoft, welches mit dem VC++-Compiler vertrieben wird.
Inhaltsverzeichnis
Funktionsumfang
Die COM-Unterstützung in VC++ gestattet es Entwicklern, eine Vielzahl von COM-Objekten, OLE-Servern und ActiveX-Controls auf einfache Art und Weise zu erstellen. Die Quellcodes der ATL sind der Standard Template Library (STL) ähnlich strukturiert; ein Wizard übernimmt zusätzlich das Erstellen von Klassen und Interfaces und erleichtert dem Entwickler damit die Arbeit.
Controls, die in Webseiten eingebettet werden können, könnten genauso mit den Microsoft Foundation Classes erstellt werden, allerdings sollte auf die Download-Größe geachtet werden, wo die ATL den MFC gegenüber Vorteile aufweist. Die Abhängigkeiten der MFC summieren sich je nach Verwendung auf mehrere Megabyte, wohingegen alle ATL-Abhängigkeiten in eine DLL eincompiliert werden, die nur wenige hundert Kilobyte groß ist.
Anwendung
Ein konkreter Anwendungsbereich für ATL ist die Microsoft ASP-Technologie, wo VBScript als Programmiersprache zum Einsatz kommt, deren Funktionsumfang durch ActiveX-Controls und COM-Objekte beliebig erweiterbar ist. Weiterhin ist ATL die Grundlage der Windows Template Library (WTL). Hierbei handelt es sich um ein von Microsoft als OpenSource freigegebenes Framework zur Erstellung von Benutzeroberflächen (Dialoge, Views) für Windowsprogramme (Windows Desktop Applications/WDA). Von der ATL gibt es auch eine Variante namens ATL Server um serverseitige Software zu entwickeln.
Versionsgeschichte
Die Entwicklung von ATL begann Ende 1995, als man bei Microsoft neue Klassenbibliotheken für die Visual C++ 4.2 Enterprise Edition entwickeln wollte. Während der Entwicklungszeit wurden diese Bibliotheken zunächst als Microsoft Enterprise Classes (MEC) bezeichnet. Die erste Version, ATL 1.0, wurde im Frühsommer 1996 zum Herunterladen im Internet angeboten. Im Spätsommer folgte ATL 1.1, das neben Fehlerbehebungen auch Neuerungen wie Connection Points, NT Services, RGS Registry Support und Sicherheitsfeatures enthielt. Mit dem darauffolgenden ATL 2.0 war man in der Lage, ActiveX Steuerelemente zu erzeugen. Es wurde im Dezember 1996 zusammen mit VC 5.0 ausgeliefert. Es folgte bald Version 2.1, die lediglich Fehlerbehebungen für Alpha-, MIPS- und PowerPC-Prozessoren enthielt. ATL 2.1 wurde zusammen mit der Alpha-Version von Visual C++ 5.0 ausgeliefert, außerdem konnte es über das Internet für VC 4.2 heruntergeladen werden. Im Juni 1998 wurde VC 6.0 gemeinsam mit ATL 3.0 ausgeliefert. [1] Mit der Visual Studio-Version 2005 wurde ATL in der Version 7 ausgeliefert. Aktueller Versionsstand ist ATL 9.0.
Einzelnachweise
- ↑ Jim Springfield: Vorwort zu B. Rector, C. Sells: ATL internals. Addison-Wesley, 2. Auflage, 1999, ISBN 0-201-69589-8
Weblinks
Wikimedia Foundation.