ActionScript
ActionScript | |
---|---|
![]() | |
Basisdaten | |
Paradigmen: | objektorientiert |
Erscheinungsjahr: | 1998 |
Designer: | Gary Grossman |
Entwickler: | Adobe Systems (früher Macromedia) |
Aktuelle Version: | 3.0 (27. Juni 2006) |
Typisierung: | stark, statisch |
Beeinflusst von: | JavaScript, Java |
Betriebssystem: | plattformunabhängig |
help.adobe.com/de_DE/as3/learn |
ActionScript (kurz AS) ist eine Programmiersprache des US-amerikanischen Softwareunternehmens Adobe Systems 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. Rich Internet Applications, Desktop-Anwendungen (Adobe Air) und Apps für iPhone und iPad, Android und Blackberry erstellen. Die Sprache wurde ursprünglich von Macromedia entwickelt, das im Dezember 2005 von Adobe Systems übernommen wurde.
Funktion
Wä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 Flash Develop, sowie die proprietären Programme FDT, 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.
Die Mächtigkeit der Sprache wird durch den Umfang verfügbarer Klassenbibliotheken bestimmt. So sind die Flash-Klassenbibliotheken, und damit auch die Animationsmethoden von Flash, nur verfügbar, wenn auch die kostenpflichtige Adobe Flash IDE installiert wurde. Adobe Flex und Adobe AIR bieten durch die Klassenbibliothek des frei verfügbaren Flex SDK eigene Methoden, die auf die Animation von GUI-Elementen hin optimiert wurden und für Vektor- und Bitmapgrafiken nicht die Performance der Flash-Klassenbibliotheken bieten. Eine eigene Klassenbibliothek kann ebenfalls verfasst und in eine SWC-Klassendatei kompiliert werden, die wiederum in andere Projekte eingebunden wird.
Versionen
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 wurde in Flash 8 integriert und bot wesentlich mehr Kontrolle über die Flash-Präsentation. Die prototypisierte Objektorientierung aus der ersten Version wurde mit neuer Syntax gekapselt, sodass sich Code nach den aus Java und C++ bekannten Gewohnheiten schreiben ließ. Die Prototypkette ist jedoch erhalten geblieben und am Vererbungsmechanismus hat sich in dieser Version nichts geändert.
Diese Versionen von ActionScript arbeiteten stets ereignisorientiert. Sie werden also nur nach einem eingetretenen Ereignis ausgeführt. Dazu gehören etwa:
- Schlüsselbilder
- sobald der Player ein bestimmtes Schlüsselbild abspielt
- Schaltflächensymbole
- der Nutzer fährt mit der Maus über eine Schaltfläche oder klickt diese an
- MovieClip-Symbole
- eingebettete MovieClips lösen selbst Ereignisse aus
- Intervallimpulse
- Gestartete Intervalle (mit IRQs zu vergleichen) lösen den Aufruf aus
Ab Flash Player 9 wurde unter Adobe ActionScript 3 eingeführt. Diese Version verzichtete erstmals auf Prototypen als Objektorientierung und stellt 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 und klassenbasierte Objektorientierung. Gerade diese großen Änderungen führten zum Abbruch der Entwicklung von ECMAScript 4.0, sodass ActionScript 3 ein isolierter Vertreter dieses Sprachentwurfs ist. ActionScript 3 wird in der Adobe Virtual Machine (AVM) 2 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, sodass ActionScript 1 und 2 getrennt von ActionScript 3 laufen.
Siehe auch
- Adobe Flash
- Adobe Flex
- haXe (Programmiersprache) – alternative Sprache zum Einsatz in SWF-Dateien und Webanwendungen
- Flash Development Tools – proprietäres Eclipse-Plugin zur Entwicklung von ActionScript
Literatur
- 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
- ActionScript 2.0 Referenzhandbuch (von Adobe)
- ActionScript 3.0 Referenzhandbuch (von Adobe)
- ActionScript 3.0 Arbeitshandbuch (von Adobe)
- ActionScript 3.0 Coding Conventions (engl.)
- ECMAScript-Sprachspezifikation (engl.)
- FlashForum (Deutschsprachige Flash Usergroup)
- Einführung Actionscript 3.0
- Tutorials (von Macromedia) (engl.)
- as3compile – freier Compiler für ActionScript 3.0