Просмотр полной версии : ActionScript 3.0 : Библия для начинающих или На пальцах (дополнено 01-03-2006)
Что такое Flex и что такое ActionScript 3.0. Расставим точки над i:
Не думал, что придется писать этот пост. Не хотел. Пришлось.
Последнее время я встречаю десятки людей, заблуждающихся и несправедливо связывающих AS3 и Flex. Спору нет, AS3 пока можно попробовать лишь при помощи Flex Builder 2, который, в полной версии, будет его поддерживать. Но! ActionScript 3.0 -- будущее всей Flash Platform в целом и для меня, человека, использующего Flex лишь в каждом десятом проекте, AS3 -- это будущее Flash. Не надо связывать его только с Flex.
Продолжаем. Есть индивидуумы, порой даже модераторы одного крупного ресурса о Flash в Рунете, которые вообще не знают, что такое Flex.
Итак, Flex -- это родственная Flash технология, основанная на описании интерфейса приложения с помощью диалекта XML -- MXML. Flex приложение может компилироваться на сервере, а может -- из IDE, как во Flash, результатом является swf файл [однако версия 1.5, т.е. последняя коммерческая на момент написания поста, требует установленного License Manager на сайте, где будет располагаться ролик. Т.е. все далеко не бесплатно.]. Достоинства Флекса тесно связаны с его недоcтатками. Без загрузки внешних роликов мы не можем создать экстраординарного интерфейса, точнее, это сложно. Но в случае со строгими интерфейсами бизнес-приложений скорость разработки просто потрясающая. Также Флекс славен своими графиками, компоненты для построения которыхсделаны не только удобными для использования, но и в 99% случаев выглядят приемлимо для использования as is. Пример -- графики Google Analytics.
Грустно, что люди, зарабатывающие Flash разработками в России, в большинстве своем не знают таких азов...
--
14 ноября 2005, novemberain.com (http://www.novemberain.com/blog/?p=24#comments)
Буду выкладывать ссылки по мере публикации / нахождения.
@ silin.fatal.ru (категория "уже освоился") :
MultiLoader (http://silin.fatal.ru/AS3/MultiLoader.as) : Загрузка нескольких изображений.
DivBitmap (http://silin.fatal.ru/AS3/divbitmap/DivBmp.as) : Деление изображения на части.
DistortBitmap (http://silin.fatal.ru/AS3/distort/DistortBitmap.as) : Искажение изображения.
TexturedCube (http://silin.fatal.ru/AS3/texuredCube/texturedCube.as) : Текстурирование куба.
Hint (http://silin.fatal.ru/AS3/Hint.as) : Всплывающая подсказка своими руками.
FPS (http://silin.fatal.ru/AS3/distort/Fps.as) : Отображение FPS
Чем Action Script 3.0 отличается от Action Script 2.0
Если коротко : на первый взгляд -- не столь многим, если посмотреть подольше -- почти всем.
Action Script 2.0 представляет собой "гибрид крота и скаковой лошади" (с) Nox Noctis (http://www.noregret.org/). Action Script 3.0 -- язык, стоящий на одной ступени с такими монстрами, как Java. Не верите -- посмотрите на примеры (http://labs.macromedia.com/wiki/index.php/Showcase)
Перечислять список нововведений очень долго и далеко не все они нужны большинству просто потому, что знания у большинства не те. Перечислю по верхам:
728 (семьсот двадцать восемь) классов только в альфа-версии языка.
Новые подходы и техники из-за появившихся возможностей, например, побайтово загружать и докачивать файлы.
Добавлена видимость в пределах пакета и новые спецификаторы: protected (наконец-то...) и internal.
Измененная модель событий, поддерживающая всплывание событий (event bubbling), контроль отработки события (event flow control) и т.д.
Сильно измененный подход к работе с визуальными объектами. Теперь мувиклипы не надо аттачить или дублировать, зато можно скопировать из одного визуального объекта в другой.
AS3 исполняется новым интерпретатором -- AVM2
Новая, гораздо более продуманная и совершенно не похожая на то, что было, система работы с XML -- E4X
Добавилась система отражений (reflections)
Появился человеческий контроль ошибок -- runtime exceptions
Изучая AS3 вы столкнетесь с необходимостью изучать Flex и все его тонкости и мощности. Поверьте, это -- удивительный мир, но там очень много нового для пришедшего из Flash программиста. Учтите это.
Поэтому если Вы стоите перед выбором -- нужен ли вам AS3? -- переформулируйте вопрос как "а достаточно ли сложные приложения я пишу" ? Если ответ утвердительный и вы не ограничиваетесь одними двухуровневыми меню, вы быстро полюбите AS3 даже в его сегодняшнем, сыром альфа-виде. Если же вы дизайнер -- скорее всего, вам не нужен даже AS2.
И напоследок, помните -- не поняв ООП какое оно есть в AS2, вы ничего не поймете в AS3. AS3 -- для программистов. Точка.
Про ресурсы по AS3 ранее уже писал Давид "Nirth" Векслер:
Ресурсы по ActionScript 3.0
На русском:
На английском:
Adobe Labs (labs.macromedia.com)
Сайт посвященый новому AS 3.0 и Flex Builder 2 от макромедии.
Showcase @ Macromedia (http://labs.macromedia.com/wiki/index.php/Showcase)
Галерея с примерами AS 3.0 приложений, и статьями на макромедии
ActionScript 3.0 forum @ Macromedia (http://www.macromedia.com/cfusion/webforums/forum/categories.cfm?forumid=72&catid=587)
Форум по ActionScript 3.0 на той же макромедии.
Flex Builder 2:
Почти всю информацию вы можете почерпнуть в AS3 Wiki @ Adobe Labs (http://labs.macromedia.com/wiki/index.php/Flex_Builder).
Примеры работ (http://labs.macromedia.com/showcase/) можно посмотреть на сайте Adobe, однако, даже не в примерах дело. Дело в нереальной для Flash и AJAX скорости разработки. При этом связывание данных с представлением или объектов друг с другом посредством событий совершенно не требует от вас навыков программиста -- хотя, при желании, вы легко можете контролировать каждую строку кода.
Flex Builder 2 -- новая среда разработки от Adobe, поддерживающая Flex Framework и первая среда, поддерживающая ActionScript 3.0. В основе FB2 лежит Eclipse IDE (http://www.eclipse.org) -- без преувеличения гениальная среда разработки для множества языков (изначально для Java), поддерживающая мощную систему плагинов (и позволяющая с удивительной легкостью их создавать). Те, кто видел Эклипс, поймут, что программисты получают от этого шага экс-Макромедии.
Вторая хорошая новость -- Flex 2 SDK ( плагин к Eclipse, документация и прочее, необходимое для разработки ) + компилятор будут официально бесплатны, а за Enterprise Services попросят меньше $1K. Смеющихся над "всего лишь чуть меньше $1000" попрошу вспомнить, что разрабатывать можно не только мелкие приложеньица и предыдущая версия Flex стоила $12K в самом лучшем случае.
Flex Builder 2 Beta1 (http://www.macromedia.com/go/labs_flex2_downloads) доступен в видел плагина к Эклипсу (вам понадобится версия 3.0 или выше, плагин весит 39 MB), либо как stand-alone приложение (124 MB), тем не менее, имеющее в своем сердце Eclipse IDE.
Что это значит? Не просто то, что мы получим великолепную IDE. А еще и то, что мы получим возможность разрабатывать плагины к этой IDE (по словам Евгения Потапенко (http://www.potapenko.com/), на данный момент найдено 2 точки, к которым уже разрешена прикрутка плагинов) -- со всеми вытекающими для разработчика. Это уже не просто продажа компонентов, которая была в MX 2004.
Версия под новую FB2 Beta2 (http://www.macromedia.com/cfusion/entitlement/index.cfm?event=custom&sku=RC00169&e=labs) доступна уже сейчас.
Известные нюансы о Flex Builder 2, которые нужно учитывать, изучая AS3:
1. Flash Player 8.5 и ролики предыдущих версий - бета-релиз Flash Player 8.5 и не рассчитан на постоянное использование (хотя я именно с ним и живу, не разу не пожалев о его установке -- М.К.). Вопрос о полной совместимости с предыдущими версиями контента во Flash Player 8.5 остается открытым.
3. Размер итогового SWF -- SWF файлы в бете несколько тяжелее, чем будет в конечной версии. Запланированная Adobe дальнейшая оптимизация должна каснуться размера результата.
4. Проекты-библиотеки - многие разработчики просили добавления проектов-библиотек во Flex, пока этой фичи нет, но ММ помнит о ней. Пока сделать проект-бибилиотеку можно только используя инструментарий командной строки (см. документацию).
5. Фреймворк состояний (view states framework) и Flex Builder User Interface -- весьма молодая фича, возможно, является одновременно самой полезной для RIA разработчиков. Все комментарии относительно удобства и стабильности работы Adobe просит оставлять на форумах Adobe Labs (http://www.macromedia.com/cfusion/webforums/forum/index.cfm?NoCookies=Yes).
6. Flex Data Services -- дата сервисы, такие, как протокол AMF, система передачи сообщений (messanging), компиляция по запросу браузера и т.п.
В целом, к выходу беты АС3 уже достаточно стабилен и хорошо документирован, чтобы его изучать.
Примеры сетевых приложений на AS3
Самые популярные пока направления экспериментов с AS3 -- сетевые приложения. Почтовики, мессенджеры (клиенты популярных IM . IRC и свои), приложения для ньюс-конференций и т.п. -- с ними могут конкурировать только конвертеры изображений и новые идеи навигации.
Вот список примеров сетевых приложений на АС3:
Email (POP3)
http://spbarber.com/blog/pop3-socket-example-using-flex-2/
IRC
http://blog.je2050.de/?p=35
NNTP
http://luar.com.hk/blog/?p=647
VNC
http://www.darronschall.com/weblog/archives/000190.cfm
AIM
http://lab.zeusdesign.net/?p=13
MSN
http://blog.xsive.co.nz/archives/68
Про Flex Data Services
Flex Enterprise Services -- набор средств для работы с данными. Данные могут быть как удаленными источниками (вебсервисы, XML, БД), так и другими подключенными к данному серверу клиентами.
Фактически, говоря коротко и ясно, мы получаем в руки инструмент, который не просто сам отслеживает изменения в источнике, он также обладает функциональностью Flash Media Server по работе с данными -- автоматическому их распределению между пользователями, а протокол AMF позволяет работать с удаленными объектами (очень грубо говоря объектами в PHP скрипте, POJO или объектами в выполняемом на сервере ASP.NET приложении) как с объектами ActionScript (сериализация и десериализация проводятся автоматически).
Имея два этих средства в одном флаконе делать распределенные аппликухи становится проще простого. Настолько, что это может сделать даже никогда не занимавшийся сетевым программированием.
Flex Data Services используют формат AMF3 / Secure AMF3 -- причем Адоб всячески дает понять, что опен-сорсные альтернативы их Remoting они душить не будут. В том виде, в каком он есть, Flex Data Services тесно интегрирован с самым развитым серверным языком -- Java. Для этого во Flex существует специальный Java адаптер.
Hello guys
, значит ли это , что такой новичек как я , который лишь ознакомился с азами скриптинга в кадрах на AS2.0
может построить приложение , которое будет общаться с базой данных и иметь визуальные возможности FLASH ? Сможет ли пользователь имея лишь браузер обращаться к базе данных ? мне очень интеретсно научиться реализовывать такие возможности ! подскажите пожалуйста как быть ? я путаюсь ... совсем не хочется пытаться сделать как это пишут в инете AS2.0 - PHP - mySQL (
Как быть ? как это получается на практике ? С чего начать изучать описанный выше мир ? Какие книги купить ? FLASH3.0 ? искать описание FLEX builder 2 ? или узнать что такое FLASH Media Server ?
я чувствую что это то что я ищю , но как это ? у меня нет друзей которые хоть чета бы в этом понимали
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.