Часть III. Компоновочные блоки / Введение в язык ActionScript и интерактивные
технологии
13. Введение в объектно-ориентированное программирование
Базовые принципы программирования
Методологии программирования
Объекты, свойства и методы
Сравнение объектно-ориентированных языков программирования, основанных
на классах, и объектно-ориентированных языков программирования, основанных
на прототипах
Создание и использование объектов
Основы программирования
Переменные
Синтаксис метода
Массивы
Фигурные скобки
Циклические конструкции
Точечный синтаксис
Упражнение 13.1. Создание объекта «Список необходимых покупок»
«Shopping List»
Статические объекты
Синтаксис массива
Расширение возможностей объектов
Расширение возможностей объектов-прототипов
Сравнение методов передачи параметров по значению и передачи параметров
по ссылке
Создание собственных объектов-прототипов
Упражнение 13.2. Инициализация основных свойств
Упражнение 13.3. Создание метода checkOut( )
Упражнение 13.4. Создание метода checkln( )
Упражнение 13.5. Создание метода retire( )
Упражнение 13.6. Присоединение созданных методов к объекту «Book»
Упражнение 13.7. Создание новых экземпляров объекта «Book»
Упражнение 13.8. Использование созданных методов для манипулирования
объектами «Book»
Проектирование объектов для использования в среде Flash
Краткие выводы
14. Системы меню
Создание простого всплывающего меню
Упражнение 14.1. Создание простого всплывающего меню
Создание оконной системы меню
Создание меню, управляемого данными
Упражнение 14.2. Создание базового меню
Разворачивание и сворачивание меню
Упражнение 14.3. Разворачивание и сворачивание оконного меню
Получение доступа к информационному наполнению
Упражнение 14.4. Получение доступа к информационному наполнению
Упорядочивание окон
Упражнение 14.5. Упорядочивание окон
Краткие выводы
15. Использование предварительно загружаемых последовательностей
Сравнение организации предварительной загрузки в среде Flash 4
и Flash MX
Использование свойств _framesloaded и _totalframes
Использование методов getBytesLoaded() и getBytesTotal()
Упражнение 15.1. Использование методов getBytesLoaded() и getBytesTotal()
для организации простого процесса предварительной загрузки
Добавление процентной шкалы прогресса загрузки
Упражнение 15.2. Создание динамически масштабируемой шкалы прогресса
загрузки
Упражнение 15.3. Добавление фрагмента программного кода на языке
ActionScript к созданной шкале прогресса загрузки
Отображение оставшегося времени загрузки
Упражнение 15.4. Настройка отображения таймера
Упражнение 15.5. Настройка вычислений для предварительного загрузчика
Развлечение пользователя во время предварительной загрузки
Упражнение 15.7. Создание предварительного загрузчика со встроенной
игрой: создание файла и загрузка данных
Упражнение 15.8. Создание предварительного загрузчика со встроенной
игрой: написание фрагмента программного кода на языке ActionScript
для создания «магнитных фишек»
Краткие выводы
16. Интерфейсные технологии
Основы интерактивности в стиле «перетащить-и-отпустить»
Упражнение 16.1. Использование базовой интерактивности в стиле
«перетащить-и-отпустить»
Технология «перетащить-и-отпустить» в сочетании с мишенью для сброса
Упражнение 16.2. Использование свойства _dropTаrget
Пользовательские курсоры
Упражнение 16.3. Создание основного фильма
Упражнение 16.4. Настройка области попадания для пользовательского
курсора
Плавное регулирование
Упражнение 16.5. Создание графических изображений для управляющего
элемента-движка
Упражнение 16.6. Добавление программного кода для реализации интерактивности
в стиле «перетащить-и-отпустить»
Упражнение 16.7. Добавление фрагмента программного кода на языке
ActionScript для реализации функции onSlide()
Прокручиваемый текст
Упражнение 16.8. Создание текстового поля, присвоение имени переменной
и передача текста в переменную
Добавление основной прокрутки
Упражнение 16.9. Настройка прокрутки текста
Придание свойства невидимости экранным кнопкам прокрутки
Упражнение 16.10. Прокрутка вверх и вниз
Загрузка текста из внешнего файла
Упражнение 16.11. Загрузка текста из внешнего файла
Краткие выводы
17. Управление звуком с использованием объекта Sound
Создание точного индикатора состояния процесса загрузки
Изменение ссылок на _root
Краткие выводы
25. Индивидуальные отличительные особенности браузеров и компьютерных
платформ
Требования среды разработки Flash к программному и аппаратному
обеспечению компьютера
Среда разработки Flash
Web-браузер и проигрыватель Flash
Определение проигрывателя Flash
Набор инструментальных программных средств Macromedia Flash Deployment
Kit
Программа Flash Dispatcher
Примеры HTML-страниц
Упражнение 25.1. Использование поведения диспетчера программы Dreamweaver/OLtraDev
Обнаружение проигрывателя Flash на основе использования возможностей самого браузера (поддерживается только в версиях браузера Microsoft
Internet Explorer для компьютерной платформы Windows)
Обнаружение проигрывателя Flash на основе использования сценариев
Использование функции getVersion()
Упражнение 25.2. Использование функции gefVersion()
Использование собственных возможностей программы Flash для обнаружения
версии 4 и более поздних версий проигрывателя Flash
Упражнение 25.3. Создание модуля обнаружения проигрывателя Flash
Пользовательский выбор
Архивирование проигрывателей Flash для целей тестирования
Упражнение 25.5. Деинсталляция управляющего элемента ActiveX проигрывателя Flash (только для браузера Microsoft Internet Explorer
в версии для компьютерной платформы Windows)
Индивидуальные отличительные особенности компьютерной платформы
Macintosh
Перетаскивание объектов в среде операционной системы Macintosh
OS 9 Аварийное завершение работы компьютеров Power Mac G4
Cube
Открытие на компьютерной платформе Macintosh исходных файлов Flash,
созданных на компьютерной платформе Windows
Проблемы компьютерной платформы Windows
Аварийное завершение работы программы проигрывателя Flash под управлением операционной системы Windows NT 4.0 при использовании браузера Microsoft Internet Explorer
Аварийное завершение работы программы проигрывателя Flash в среде
браузера Microsoft Internet Explorer при наличии внедренных таблиц
Проблемы, связанные c Web-браузером
Teги <OBJECT> и <EMBED>
Индивидуальные отличительные особенности браузеров Netscape
Браузер Microsoft Internet Explorer версии 4.5 для компьютерной
платформы Macintosh
Интеграция браузера Microsoft Internet Explorer версии 5.5
Браузеры Netscape, Microsoft Internet Explorer и автономный проигрыватель
Flash
Краткие выводы
26. Взаимодействие с ведущими прикладными системами программного обеспечения
Использование действий Flash для организации взаимодействия Flash
с ведущими прикладными системами программного обеспечения
Действие loadVariables()
Действие getURL()
Объектная модель документа
Использование действия getURL() для вызова функции, написанной на языке JavaScript
Упражнение 26.1. Открытие нового окна браузера
Использование действия getURL( )для установки cookie
Упражнение 26.2. Использование функции getURL() для создания cookie
Упражнение 26.3. Использование функции getURL( ) для поиска cookie Действие FSCommand()
Упражнение 26.4. Использование действия FSCommand() с Web-браузером
Автономный проигрыватель Flash
Методы Macromedia JavaScript для объектов Flash
Набор инструментальных программных средств Macromedia Dreamweaver
JavaScript Integration Kit
Упражнение 26.5. Подтверждение правильности номеров карточки социального
обеспечения и кредитной карточки
Упражнение 26.6. Создание cookie и навигация по фильмам Flash
Краткие выводы
27. Работа с промежуточным программным обеспечением
Сравнительные характеристики языков промежуточного программного
обеспечения
ColdFusion
Чем выделяется ColdFusion
Поддержка корпоративных клиентов и сообщества разработчиков
ASP
Чем выделяется ASP
Поддержка корпоративных клиентов и сообщества разработчиков
Java Servlet/JSP
Чем выделяется J SP
Поддержка корпоративных клиентов и сообщества разработчиков
РНР: процессор гипертекста
Чем выделяется РНР
Поддержка корпоративных клиентов и сообщества разработчиков
Что же выбрать: ColdFusion или РНР? ASP или JSP?
Интеграция систем промежуточного программного обеспечения с приложениями
Flash
Интеграция шаблонов систем промежуточного программного обеспечения
с фильмами Flash
Приложение системы ColdFusion/Flash
База данных
Файл фильма Flash
Первоначальная загрузка данных
Анимационный клип serverData
Анимационный KnnntoDoList
Итоговый листинг программного кода системы ColdFusion
Краткие выводы
Приложения
А. Краткий справочник по языку программирования ActionScript
Объекты и методы
Объект Accessibility
Объект Arguments
Объект Array
Объект Button
Объект Color
Объект CustomActions
Объект Date
Объект Key
Объект LoadVars
Объект Math
Объект Mouse
Объект MovieClip
Объект Selection
Объект Sound
Объект Stage
Объект String
Объект System
Объект System.capabilities
Объект TextField
Объект TextFormat
Объект XML,
Объект XMLSocket
Операторы языка ActionScript
Свойства
Действия
В. Краткий справочник по клавишным комбинациям быстрого вызова
Стандартные сокращенные клавиатурные команды программы Macromedia Flash
5
Стандартные сокращенные клавиатурные команды программы Macromedia Fireworks
3
Стандартные сокращенные клавиатурные команды программы Macromedia Freehand
9
Стандартные сокращенные клавиатурные команды программы Adobe Illustrator
9
Стандартные сокращенные клавиатурные команды программы Adobe Photoshop5
С. Ресурсы Flash
Инструменты для работы с текстом
Инструменты для создания трехмерных эффектов
Инструменты для создания рисованной анимации
Инструменты для работы с видеофрагментами
Инструменты для создания хранителей экрана
Прочие программные инструменты
Безгонорарные звуковые ресурсы
Шрифтовые ресурсы
Ресурсы трехмерного моделирования
Почтовые рассылки Flash
Ресурсы Flash в компании Fig Leaf Software
D. Содержание прилагаемого диска CD-ROM
Системные требования к компьютеру и операционной системе
Загрузка файлов с прилагаемого диска CD-ROM
Файлы упражнений
Программы сторонних (по отношению к издательству New Riders) разработчиков
Прочтите это перед использованием программного обеспечения
Предметный указатель
Об авторе
Джоди Китинг (Jody Keating) является заместителем директора в подразделении
интерактивной аудиовизуальной продукции (Interactive Media) компании Fig
Leaf Software и отвечает за организацию совместной работы программистов
и дизайнеров подразделения интерактивной аудиовизуальной продукции. Кроме
того, она преподает на Авторизованных учебных курсах компании Macromedia
по программам Flash, Generator, OLtraDev, Dreamweavcr, Fireworks и CourseBuilder
и является автором Авторизованных учебных материалов компании Macromedia
по программам Flash 5 и Generator 2 Enterprise Edition. Джоди является
также разработчиком приложений Macromedia ColdFusion и занимается в качестве
хобби вопросами интеграции приложений Flash, Generator и ColdFusion. Она
имеет начальную степень в области антропологии Университета имени Джорджа
Вашингтона и пишет дипломную работу по геобиологин. Когда Джоди не пишет
и не руководит работой своего коллектива, она увлекается гонками на парусных
шлюпках, каяках и греблей в Чесапикском заливе.
О компании Fig Leaf Software
Отдел создания аудиовизуальной продукции (Creative Media Department) компании
Fig Leaf Software обладает спроектированными и разработанными, весьма
впечатляющими аудиовизуальными продуктами, основанными на Web. для некоторых
наиболее известных компаний и организаций в Соединенных Штатах Америки.
Компания Fig Leaf Software предлагает творческие услуги талантливой, удостоенной
наград и призов, команды художников, программистов, писателей и технологов
обучения, которая постоянно разрабатывает для своих клиентов решения следующего
поколения. Используя сочетание творческого таланта, опыта и технологических
находок, эта команда способна предоставить своим клиентам аудиовизуальные
продукты, основанные на Web и представляющие собой новый уровень баланса
между формой, движением и функциональностью.
Введение
С выходом Flash MX компания Macromedia заявила о Flash как об инструменте,
удобном не только для создания интерактивных и привлекательных Wcb-сайтов. но
также - и для высокопроизводительных Web-приложении. Добавьте к этому интеграцию
Flash, других программ от Macromedia (FreeHand, Dreamweaver и пр.). и можете
не сомневаться в том. что теперь вам по плечу эффектно увеличить производительность
своих Web-приложений.
Массовое проникновение Flash на рынок браузеров означает, что дизайнеры и разработчики
получили, наконец, жизнеспособную альтернативу стандартному HTML/DHTML сайту.
Начиная с обзора, опубликованного в июне 2001 года, Macromedia приводит данные
о том, что 97 процентов всех пользователей, просматривающих Web, имеют проигрыватель
Flash. Ниже (в процентном соотношении) приводится статистика пользователей,
просматривающих Flash-фильмы с помощью проигрывателя той или иной версии:
Эта книга создавалась в расчете на две существенно разные аудитории: художников и программистов. Мы знаем, что художников нельзя превратить в серьезных программистов, равно, как и программистов - в одаренных художников. Однако мы надеемся, что эта книга поможет установить между ними взаимопонимание. Чем глубже каждая из групп постигнет способ мышления другой, тем больше шансов обе они получат для полноценного использования реальной мощи Flash MX.
Разработка проектов во Flash MX стала поистине командной работой, причем это проявляется во Flash MX в большей степени, чем в предыдущих версиях.
Структура книги
Книга разделена на 4 части в порядке возрастания сложности.
Часть 1 - «Начало работы с Flash MX» (главы 1-3) является
вводной. Её цель - помочь начинающим пользователям получить реальное представление
об основах Flash. Если вы знакомы с Flash вообще, но не имели дела с Flash
MX, вам достаточно бегло просмотреть эти главы, чтобы уяснить методику настройки
рабочей среды и использования некоторых новых инструментов.
Часть 2 - «Компоновочные блоки/Анимация и звук» (главы 4-12)
посвящена преимущественно использованию графики, звука и приемам анимации во
Flash. Да. там есть ещё немного об ActionScript - перед разделом книги, посвященным
программированию. Не удивляйтесь: чем больше времени вы потратите на работу
во Flash, тем быстрее убедитесь в том, что хотя бы небольшие знания ActionScript
вам просто необходимы.
Часть 3 - «Компоновочные блоки/Введение в язык ActionScript
и интерактивные технологии» (главы 13-22) рассчитана на программистов и художников,
которые стремятся совершенствовать свои навыки в ActionScript. В -этой части
ActionScript интенсивно используется для управления поведением объектов во Flash.
Здесь вы также получите представление об объектно-ориентированном программировании
и большинстве новых Flash-объектов. Добавьте к этому чуточку физики и немного
XML и вы получите заметный прогресс в своем мастерстве.
В части 4 - «Собирая все вместе: реализация Flash в реальном
мире» (главы 23-27) обсуждаются некоторые темы, не полностью исчерпанные в предыдущих
частях и поясняющие вопросы, с которыми регулярно имеют дело как программисты,
так и художники. От раскадровки (storyboarding) до взаимодействия с браузером
и от особенностей операционных систем до работы с промежуточным программным
обеспечением (middleware) - эта часть помогает разрешить достаточно серьезные
проблемы. возникающие при работе с Flash.
Содержимое компакт-диска
На компакт-диске, который прилагается к книге, вы найдете все файлы ресурсов, необходимых для выполнения упражнений в любой из глав. А также - программное обеспечение с ограниченным сроком использования (shareware) от поставщиков, упомянутых в книге, которое можно использовать в связке с Flash, что значительно ускорит процесс разработки. Кроме того. прилагается несколько хороших вещей (типа звуков), которые пригодны для использования в собственных файлах пользователя.
Комментарии
Ярослав Говорунов
Очень обстоятельная (и толстая - 848с.) книга. До ее прочтения
я и не предполагал, что про Flash можно писать так много и
что это такая мощная технология. Эта книга - все, что Вам понадобиться для досконального
изучения этой технологии. В ней в равной степени глубоко рассмотрены как аспекты,
связанные с рисованием, так и темы, относящиеся к программированию. И что очень
приятно, книга то совсем новая - 2002 г., а значит, в ней не встретишь устаревшей
информации, которая изобилует на страницах большинства книг по веб программированию.
Хотя веб технологии развиваются так быстро, что возможно уже через год мне придется
забрать назад свои слова :-)