ActionScript (AS) ist eine Programmiersprache des US-amerikanischen Softwareunternehmens Adobe Inc. auf Basis des ECMAScript-Standards (ECMA-262) für Programme, die für Adobe Flash, Flex oder Air entwickelt werden. Durch die Klassenbibliotheken von Adobe ermöglicht ActionScript einen programmierten Zugriff auf die grafischen und technischen Möglichkeiten der Flash-Umgebung. Es lassen sich Rich Internet Applications, Desktop-Anwendungen (Adobe Air) und Apps für Apple iOS, Android und Blackberry OS erstellen. Die Sprache wurde ursprünglich von Macromedia entwickelt, das im Dezember 2005 von Adobe Systems übernommen wurde.
ActionScript | |
---|---|
Basisdaten | |
Paradigmen: | objektorientiert |
Erscheinungsjahr: | 1998 |
Designer: | Gary Grossman |
Entwickler: | Adobe Inc. (früher Macromedia) |
Aktuelle Version: | 3.0 (27. Juni 2006) |
Typisierung: | stark, statisch |
Beeinflusst von: | JavaScript, Java |
Beeinflusste: | Haxe |
Betriebssystem: | plattformunabhängig |
help.adobe.com/de_DE/as3/learn |
Funktion
BearbeitenWährend ursprünglich Adobe Flash die einzige integrierte Entwicklungsumgebung (IDE) für die ActionScript-Programmierung darstellte, wird die Sprache mittlerweile von zahlreichen Entwicklungsumgebungen unterstützt. Zu ihnen zählen das frei verfügbare FlashDevelop sowie die proprietären Programme FDT und IntelliJ IDEA. Adobe bietet zur Entwicklung von ActionScript-basierten Applikationen Adobe Flash Builder an, welches auf Eclipse basiert und sowohl allein lauffähig ist, als auch mit einem Plugin ausgeliefert wird, das alternativ zur Benutzung des Programms selbst in eine bestehende Eclipse-Entwicklungsumgebung integriert werden kann. Anwendungen wie Ming und OpenLaszlo ermöglichen die serverseitige Erstellung von SWF-Dateien.
Versionen
Bearbeiten- ActionScript 1
- wurde 1999 in der Version 4 des Flash Players eingeführt, der damals von Macromedia entwickelt wurde. ActionScript 1 beherrschte nur rudimentäre Steuerungsfunktionen, um eine Präsentation interaktiv gestalten zu können. Objektorientierung ist in ActionScript 1 als prototypisierte Objektorientierung verfügbar.
- ActionScript 2
- ist eine zur Vorgängerversion kompatible objektorientiertere Erweiterung der Sprache, die mit Flash MX 2004 und dem Flash Player 7 vorgestellt wurde. Die prototypisierte Objektorientierung aus der ersten Version wurde mit einer neuen Syntax gekapselt, die Syntax- und Programmierparadigmen aus Java und C++ übernahm und klassenbasierte Entwicklung ermöglichte. Die Prototypkette ist jedoch erhalten geblieben und am Vererbungsmechanismus hat sich in dieser Version nichts geändert.
Seit der Einführung von ActionScript 3 wurde die API von ActionScript 1 und 2 nicht mehr weiterentwickelt, wird für die Abwärtskompatibilität jedoch auch noch in aktuellen Versionen des Flash Players unterstützt. Flex- und AIR-Anwendungen können ausschließlich in ActionScript 3 entwickelt werden.
- ActionScript 3
- wurde 2006 mit dem Flash Player 9 eingeführt und ermöglicht eine klassenbasierte Objektorientierung. Diese Version stellt somit eine große, nichtkompatible Erweiterung der Sprache dar, die auf Entwürfen zu ECMAScript 4 beruht. U. a. unterstützt AS3 die Typisierung zur Laufzeit. Gerade diese großen Änderungen führten zum Abbruch der Entwicklung von ECMAScript 4.0, sodass ActionScript 3 ein isolierter Vertreter dieses Sprachentwurfs ist.
Erweiterbarkeit
BearbeitenÜber die Objektorientierung kann auf Basis von ActionScript über quelloffene Klassenpakete und binäre Klassenbibliotheken erweiterte Funktionalität bereitgestellt werden. Diese können in Flash- oder Flex-Projekte eingebunden werden. Bei den Klassenbibliotheken handelt es sich um ZIP-Archive mit der Dateiendung SWC, die neben ActionScript-Code alle Datenformate enthalten können, die auch in SWFs eingebettet werden können. Auf diese Weise können in diesen Dateien neben ActionScript-Logik auch als Komponenten (konfigurierbare GUI-Elemente für Flash oder Flex) gestaltete Elemente weitergegeben werden.
Neben den umfangreichen Klassenbibliotheken, die Adobe mit dem proprietären Adobe Flash oder dem freien Flex SDK ausliefert, gibt es eine Vielzahl freier, kostenloser oder kommerzieller Angebote anderer Entwickler und Firmen. Sie erweitern den Funktionsumfang der Kernsprache zum Teil erheblich und stellen auf Basis der Grundfunktionen von Sprache und Plattform Features, wie z. B. Tweening- oder 3D-Funktionalitäten, zur Verfügung.
Laufzeitumgebung
BearbeitenActionScript 3 wird in der ActionScript Virtual Machine 2 (AVM2) ausgeführt, während die Vorgängerversionen in der AVM1 ausgeführt werden. Zwischen beiden virtuellen Maschinen ist keine nahtlose oder direkte Kommunikation möglich, so dass ActionScript 1 und 2 getrennt von ActionScript 3 laufen.
Siehe auch
Bearbeiten- Adobe Flash
- Apache Flex
- FlashDevelop – Open-Source-Entwicklungsumgebung
- Flash Development Tools – proprietäres Eclipse-Plug-in zur Entwicklung von ActionScript
- Haxe – alternative Sprache zum Einsatz in SWF-Dateien und Webanwendungen
- CodeDrive – proprietäres Visual-Studio-Plugin zur Entwicklung von ActionScript
Literatur
Bearbeiten- Michael Weigend: Adobe Flash CS5 mit ActionScript 3. Praxiseinstieg. mitp, 2011, ISBN 978-3826690839.
- Tobias Hauser, Armin Kappler und Christian Wenz: Das Praxisbuch ActionScript 3. Galileo Design, 2010, ISBN 978-3836215657.
- Colin Moock: Essential ActionScript 3.0. O’Reilly Verlag, 2007, ISBN 978-0596526948.
- Colin Moock: ActionScript 3.0 Design Patterns. O’Reilly Verlag, 2007, ISBN 978-0596528461.
- Colin Moock: Essential ActionScript 2.0. O’Reilly Verlag, 2004, ISBN 978-0596006525.
Weblinks
Bearbeiten- ActionScript 2.0 Referenzhandbuch (von Adobe)
- ActionScript 3.0 Referenzhandbuch (von Adobe)
- ActionScript 3.0 Arbeitshandbuch (von Adobe)
- ActionScript 3.0 Coding Conventions (englisch)
- ECMAScript-Sprachspezifikation (englisch)
- FlashForum (Deutschsprachige Flash Usergroup)
- Einführung Actionscript 3.0
- as3compile – freier Compiler für ActionScript 3.0
- CodeDrive – Compiler für ActionScript 3.0