Информация о Flash Player

На этом занятии мы рассмотрим основную информацию о Flash Player:

  1. Загрузка и установка Flash Player
  2. Версии Flash Player
  3. Просмотр flash-фильмов вне браузера и взаимодействие с веб-сервером
  4. Виртуальная машина ActionScript (AVM)

Согласно информации о Flash Player'е, размещенной на сайте компании Adobe, он является ключевым приложением для Flash-платформы. Сегодня можно с уверенностью сказать, что Flash Player установлен на 99% компьютеров по всему миру: более 1 000 000 000, что в 11 раз больше, чем у бьющих рекорды продаж лучших игровых консолей. В популярности ему просто нет равных среди прочих компьютерных программ.

Загрузка и установка Flash Player

Несмотря на то, что большинство пользователей персональных компьютеров уже установили Flash Player, вы все равно найдете и таких, которые по тем или иным причинам не сделали этого, т.е. у них либо нет этого плейера, либо установлена его старая версия, не поддерживающая ActionScript 3.0. К счастью это очень легко исправить: посетители вашего сайта могут лично посетить веб-сайт компании Adobe, www.adobe.com и загрузить его оттуда, нажав кнопку «Get Flash Player». В качестве альтернативы Вы можете, там где это необходимо, разместить программный код на страницах вашего сайта для того, чтобы проверить наличие Flash Player на компьютере пользователя и, если нужно, то автоматически побудить его к установке более свежей версии этой программы. Если вы создаете веб-сайты с помощью Adobe Dreamweaver, то нужный код автоматически встраивается на HTML-страницу в тот момент когда вы вставляете туда flash-фильм.

Версии Flash Player'a

На момент создания этой серии уроков ActionScript последней стабильной версией является Flash Player 16.0.0.235. Важно понимать, что Flash Player — это не отдельный плейер, а дополнение к браузерам для того, чтобы они могли воспроизводить SWF-файлы.

Уроки, которые включены в этот курс, будут рассматривать приемы и техники, работающие во Flash Player 9 и более поздних версиях, но, к сожалению, не поддерживаемые старыми версиями из-за отсутствия в них поддержки ActionScript 3. При изложении материала уроков я буду отдельно акцентировать Ваше внимание на случаях, когда Flash Player будет необходим. Если Вы хотите получить больше информации по этой теме, то можете найти самый подробный отчет на этой странице. Эта информация включает в себя данные о версиях плейера, дислокации пользователей, операционных системах и т.д.

Flash Player для разработчиков

Обычная версия Flash Player не включает в себя возможность проверять и устранять ошибки в программном коде Вашего flash-фильма. Однако Adobe создала специальную версию этой программы – Debug Player, которая значительно облегчает жизнь разработчикам. Вы можете загрузить её здесь.

Просмотр flash-фильмов вне браузера

Несмотря на то, что подавляющее число flash-фильмов просматривается через веб-браузер, существует вероятность того, что Вы решите создать файл во Flash и предоставить Вашим посетителям возможность сохранить копию фильма на жестком диске их компьютера и просматривать его в любое удобное для них время. Во Flash Professional Вы можете это сделать, сохранив копию Вашего фильма в виде отдельного HTML-файла.

Flash Player и веб-сервер

Flash Player установлен и работает на компьютере пользователя, а не на веб-сервере, где хранится вся информация Вашего веб-сайта. Однако, Flash Player может успешно взаимодействовать с ним с помощью ActionScript. В обычных условиях, работая в браузере, мы обращаемся к веб-серверу по протоколу HTTP, и он посылает нам затребованный flash-фильм. Но Flash может запросить и другие файлы, хранящиеся на сервере, такие как, например, растровые изображения (.jpg, .png, .gif), другие flash-фильмы (.swf), звуковые файлы (.mp3), видео (.mpg), текстовые файлы (.txt), и,  затем, в режиме реального времени, посредством ActionScript 3.0, использовать их в воспроизводимом flash-фильме. В данном курсе «Основы ActionScript 3.0» будет отдельно рассмотрен именно этот аспект.

В обычных обстоятельствах Flash Player может запрашивать материалы только с того сервера, где непосредственно хранится воспроизводимый flash-фильм, но существуют определенные способы решения этой проблемы и мы тоже рассмотрим их в данном курсе.

Проблемы безопасности

В целях безопасности Flash Player имеет очень ограниченный доступ к операционной системе и файлам, хранящимся на локальном компьютере пользователя. Также, у него нет доступа к управлению внешними устройствами, как, например, принтеры. Поэтому, если перед Вами стоит задача создать такое приложение, у которого будет широкий доступ к файлам системы и внешним устройствам, то для этих целей Вам необходимо использовать Adobe Integrated Runtime (AIR).

Виртуальная машина ActionScript (AVM)

Программный код, написанный на языке ActionScript (о синтаксисе Actionscript мы будем говорить в следующих уроках), обрабатывается во Flash Player специальной виртуальной машиной (AVM – ActionScript Virtual Machine). Традиционно одна из самых трудоемких задач в сайтостроительстве – это проверка и тестирование уже созданных веб-сайтов в различных веб-браузерах и компьютерных платформах, включая Windows и Macintosh. Разработчики, работающие с Flash, к счастью, свободны от выполнения таких задач, т.к. именно AVM обеспечивает идентичную работу Вашего приложения во всех существующих браузерах и на всех платформах. Несомненно, что это одно из главных достоинств Flash-технологии.

Adobe практически переписал заново AVM к моменту выпуска Flash Player 9 только для того, чтобы осуществить в нем поддержку языка ActionScript 3.0. Flash Player 9 и 10 включают в себя AVM версий 1 и 2. Скорее всего, последующие версии тоже будут осуществлять эту поддержку. Когда Flash Player определяет, что файл, который нужно воспроизвести, написан на ActionScript 3.0, то он использует для это AVM 2, в других ситуациях – AVM 1. А, так как AVM 2 значительно превосходит своих предшественников в производительности, то это одна из основных причин, почему разработчики должны переходить на использование ActionScript 3.0. Но, с другой стороны, все фильмы, использующие этот язык (ActionScript ООП), должны проигрываться во Flash Player как минимум 9-й версии и последующих.

Дополнительная информация

AS3 относится к языкам программирования высокого уровня. Такие языки, как, например, Java, C++ и Visual Basic разработаны таким образом, чтобы люди могли легко их читать, писать и понимать. В них используются реальные слова английского языка как, например, "function" или "class", а также элементы грамматики такие, как кавычки, точка и точка с запятой. Но компьютеры не понимают английский.

Базовый язык, который компьютеры действительно понимают — это бинарный язык, состоящий из нолей (0) и единиц (1). Поэтому весь AS3-код должен быть переведен в бинарный для того чтобы компьютер мог его понять.

К счастью, нам, как разработчикам, не нужно это делать самим вручную, поскольку во Flash имеется встроенный компилятор (это программный компонент, который переводит код), делающий эту работу за нас.

Кроме того необходимо знать, что этот компилированный код, созданный Flash Professional или другой IDE понятен только Flash Player'у, а не процессору (CPU) вашего компьютера напрямую.

Прежде чем запускать программу, написанную на AS3 необходимо установить Flash Player на Вашу систему, т. к. его работа как раз и заключается в том, чтобы преобразовывать код в понятный процессору.

AS3 как и Java является интерпретируемым языком программирования. Такие языки используют специальную программу, которая называется виртуальной машиной. Она работает интерпретатором между процессором и Вашей программой. И как Вы уже, наверное, поняли Flash Player является такой виртуальной машиной.

Интерпретируемые языки программирования имеют определенные преимущества над теми, которые компилируют код непосредственно для процессора. Наиболее важные из них следующие:

  • Ваша программа будет исполняться без ошибок и абсолютно одинаково на любой операционной системе (Windows, Linux и Mac OS), если на нее установлен Flash Player. Вы пишете программу только один раз, а Flash Player, который создан для каждой операционной системы отдельно, позаботится о том, чтобы Ваш код исполнялся безупречно.
  • Flash Player защищает компьютер, на который он установлен, от ошибок в Вашем коде, способных повлиять на стабильность его работы (зависания системы и пр.).

Все это делает интерпретируемые языки программирования удобными и надежными.

Есть, правда, у таких языков один существенный недостаток. И относится он к производительности, которая определяет насколько быстро и эффективно работает Ваша программа.

Представьте себе, что Вы находитесь с визитом в стране, язык которой не знаете и вынуждены общаться через переводчика, который переводит каждое слово, сказанное Вами, а затем обратно ответы. Согласитесь, что это довольно медленный и утомительный процесс. К сожалению, подобное происходит между Flash Player'ом и процессором, когда исполняются программы, написанные на AS3. Насколько медленно? Трудно назвать точную цифру, но приблизительно сказать можно: в 10-20 раз медленнее чем, если бы код был компилирован в бинарный и исполнялся процессором напрямую.

Конечно, компания Adobe сделала все, чтобы Flash Player был максимально быстрым, однако этот недостаток до сих пор остается одним из главных, что заставляет, например, разработчиков flash-игр постоянно думать о том, как увеличить их производительность. Именно поэтому flash-игры 3D-типа, которые требуют серьезных производительных ресурсов при вычислении геометрии, проигрывают графическим 3D-движкам игровых консолей, таких как Xbox, PlayStation и Wii. На таких консолях используются компиляторы, которые преобразуют программный код игры непосредственно в бинарный, исполняемый их специфическими процессорами.