ActionScript
| 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 | |
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.
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 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
- 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
Ü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
ActionScript 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
- Apache Flex
- ECMAScript for XML Teil des Spachstandards zu Verarbeitung von XML
Literatur
- 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
- 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
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.