Изначальный синтаксис языка ActionScript 1 во Flash 3 был прост и
многословен, а функциональность в основном была основана на навигации
кадров и основных типах взаимодействия с мышью. Это оставалось
неизменным вплоть до появления Flash 5, где ActionScript приобрел
форму, более схожую с JavaScript. Это предоставило большую
функциональность и «синтаксис точки» для доступа к переменным и
методам. ActionScript также стал опытным языком, позволяющим
осуществлять простое объектно-ориентированное программирование с
функциональностью, схожей с доступным языком JavaScript. Это было
расширено в следующем выпуске Flash, Flash MX (6).
Программа Flash MX 2004 (7) представила ActionScript 2.0. В
ActionScript 2 появилось две новых возможности: задание типов данных
переменных и новый синтаксис класса. Задание типов данных переменных
позволяло назначить переменной любой тип значения – число, строку или
любой другой тип объекта или значения. Эта связь с типами данных была
строго определена для отладки во время компиляции. Это означало, что
любой тип данных, который вы связали с переменной, будет использоваться
только для проверки ошибок при компиляции или публикации. Если во время
процесса компиляции не обнаружено ни одного конфликта, то ваш SWF файл
будет создан со всей информацией о типах данных, размещенных в нем, а
ActionScript, размещенный внутри, будет работать без осмысления типов,
которые вы привязали к данным в исходном коде. Хотя это не
предоставляет никакого преимущества флеш проигрывателю во время
просмотра, это предоставило авторам флеш-роликов полезный инструмент
для отладки больших, более сложных приложений.Новый
синтаксис класса использовался для определения классов в ActionScript
2, схожих с классами, определяемыми для языков наподобие Java. Хотя
Flash по-прежнему в полной мере не поддерживал классы в форме
прототипов (в итоге, ActionScript 2 по-прежнему транслируется в
ActionScript 1), этот новый синтаксис предоставил похожий стиль,
который был полезен для людей, переходящих с других языков, и
предоставлял более конкретный способ организации определений классов
внутри отдельных AS файлов и пакетов. Вот мы и
дошли до Flash CS3 (9; во Flash 8 ActionScript не претерпел
значительных изменений) с языком ActionScript 3.0. Здесь мы получили
новый язык ActionScript, который получил не только новый номер версии,
но также новую виртуальную машину – базовое программное обеспечение
внутри флеш-плеера, которое запускает ActionScript во время
проигрывания.
И ActionScript 1, и
ActionScript 2 используют AVM1 (виртуальная машина ActionScript 1), так
как они по существу одинаковы в пределах потребностей проигрывания.
Запомните, что в ActionScript 2 по большей части добавлена только
проверка типа компиляции и новый синтаксис, который по существу
становился ActionScript 1 после компиляции. ActionScript 3 запускается
на абсолютно новой виртуальной машине, называемой AVM2 (или иногда
AVM+), разработанной с нуля специально для выполнения ActionScript 3 и
только кода ActionScript 3. В результате, клипы на ActionScript 3 не
могут напрямую взаимодействовать с клипами на ActionScript 1 или
ActionScript 2. Вы также можете обнаружить, что изменения в
ActionScript 3 значительнее, чем даже переход с ActionScript 1 на
ActionScript 2. Примечание: ActionScript 1 и 2На
всем протяжении серии данных уроков языки ActionScript 1 и ActionScript
2 будут рассматриваться вместе как просто ActionScript 2, который
является последней версией языка ActionScript, продолжающей работать с
использованием AVM1. |
|