Мова програмування ActionScript

ActionScript — об’єктно-орієнтована мова програмування, один з діалектів ECMAScript, який додає інтерактивність, обробку даних і багато іншого в вміст Flash-додатків. ActionScript виповнюється віртуальною машиною (ActionScript Virtual Machine), яка є складовою частиною Flash Player. ActionScript компілюється в байт-код, який включається в SWF-файл.

SWF-файли виконуються Flash Player-ом. Flash Player існує у вигляді плагіна до веб-браузеру, а також як самостійне виконується додаток (standalone). У другому випадку можливе створення виконуваних exe-файлів (projector), коли додаток Flash Player об’єднується з swf файлом по аналогії з SFX.

За допомогою ActionScript можна створювати інтерактивні мультимедіа-додатки, ігри, веб-сайти та багато іншого.

ActionScript — відкритий мова програмування, його специфікація знаходиться у відкритому доступі на сайті Adobe [3]. Компілятор (як частина Apache Flex) і відкрита віртуальна машина (Tamarin) є відкритим програмним забезпеченням.

ActionScript як мову з’явився з виходом 5-й версії Macromedia Flash, яка стала першою програмованої на ActionScript середовищем. Перша вийшла версія мови називалася ActionScript 1.0. 6-я версія Flash (MX) також використовувала ActionScript 1.0. У 2004 році компанія Macromedia представила нову версію ActionScript 2.0 разом з виходом Flash 7 (MX 2004), в якій було запроваджено суворе визначення типів, а також програмування, засноване на класах. Тобто з’явилися нові ключові слова:

  • class (клас),
  • interface (інтерфейс),
  • extends (установка спадкування)
  • модифікатори доступу: private, public;
  • та інші.

Також Macromedia була випущена модифікація мови Flash Lite для програмування під мобільні телефони.

ActionScript 1.0 є прототипна мовою програмування. Тобто він цілком реалізує всі три принципи об’єктно-орієнтованого програмування.

ActionScript 2.0 є надбудовою над ActionScript 1.0. Перевірка типів і робота з ієрархією класів здійснюється під час компіляції, яка закінчується генерацією байткода, аналогічного ActionScript 1.0

У 2006 році вийшов ActionScript 3.0 в середовищі програмування Adobe Flex, а пізніше в Adobe Flash 9.

ActionScript 3.0 представляє, в порівнянні з ActionScript 2.0, якісна зміна, він використовує нову віртуальну машину AVM 2.0 і дає замість колишнього формального синтаксису класів даний класове (class-based) Об’єктно-орієнтоване програмування. ActionScript 3.0 забезпечує зростання продуктивності, в порівнянні з ActionScript 1.0 / 2.0, до 700 раз (це лише обробка інструкцій, не зачіпаючи графіком).ActionScript 3.0 дозволяє працювати з бінарними даними, з BitMap (що забезпечує значний приріст продуктивності: до 10000 раз). ActionScript 3.0 за швидкістю наблизився до таких мов програмування, як Java і C #. Збільшення продуктивності засноване на динамічної трансляції коду (JIT). Таке збільшення продуктивності можливо лише для деяких типів даних і вимагає особливої ​​організації коду [4]. Обсяг коду, як правило збільшується в кілька разів [5] (в порівнянні з AS1)