Приятное программирование: знакомство с FlashDevelop (часть 1)
Человек по своей натуре любит комфорт. Комфорт проявляется в совершенно разных формах: от получения боли (бывают же такие) до созерцания красивой вазы на столе. Начинающий флешер узнает, что такое настоящий комфорт, когда переходит на более удобный редактор кода, оставляя за своей спиной мучения и частые опечатки, что были в работе с внутренним редактором кода FlashIDE. Да-да, Adobe Flash CSx, она самая. К сожалению, слишком многие пишут в кадрах на манер AS1. Это не есть хорошо, это плохо и вообще. Если вы такой – эта статья не для вас, равно как и весь цикл подобных статей. Но хотелось бы ждать вашего исправления, ага?
Как понятно из заголовка, я сейчас буду преподносить полезное и комфортное знание о программе FlashDevelop и постараюсь осветить самые распространенные и важные аспекты. Что это за программа? А все очень прозрачно, это редактор кода, один из самых удобных (тут мой энтузиазм и любовь к FD зашкаливали), нужно только прочувствовать это. А что самое главное, он до сих пор совершенствуется и имеет неплохую поддержку, как со стороны разработчиков, так и со стороны форума, насколько мне известно.
Ну, значит, нужно начать более подробный рассказ с ссылки на дистрибутив. Вот раздел на форуме с самыми свежими версиями, качаем саму программу и FlexSDK (в той же теме должен быть). Второй качать можно по желанию, главное определить для себя, чем будем заниматься. А вариантов у нас два: в FD только код, а компилятором нам служит FlashIDE – в таком случае FlexSDK нам не нужен; все делаем в FD, подключаем SWC и хотим компиляцию без багов – тогда качаем. Кроме того, нынче в установку занесли автоскачивание FlexSDK, то есть, если что, можно подумать, быть или не быть, при установке.
Описывать процесс установки, на мой взгляд, глупо – там все понятно. Но стоит осветить один момент. На втором экране можно выбрать тип установки. Рекомендую поставить в Advanced галочку у пункта Standalone. И я бы не знал об этом, если бы мне не подсказал уважаемый iNils. Благодаря этому пункту программа установится в одно место, а не будет раскидана по всему диску С (забегу вперед и скажу, что это для того, чтобы в будущем подстроить все шаблоны классов под себя).
Итак, проинсталлировав все, открываем и видим много чего непонятного. Обо всем по порядку. Рассказывать о настройках я буду субъективно, но постараюсь объяснить все, о чем сам знаю (в остальном прошу помочь для полноты статьи). Пока что нас интересуют две панели – справа и снизу. К слову, все панели перетаскиваемые и могут быть как независимыми окнами, так и панелями, причем в совершенно любых местах. Правая панель включает в себя четыре вкладки: Outline, Bookmarks, Files, Project. Первая вкладка одна из важных, на мой взгляд. В ней отображаются все методы, переменные, константы и прочее с иконками-идентификаторами приватности. Удобно также через двойной клик по элементу в списке переходить в место объявления метода/переменной. Далее, Bookmarks. Метки-закладки, как в книге. Я убрал с глаз долой эту вкладку, ибо не вижу в ней никакого для себя смысла. Files представляет собой аналог файлового менеджера (тоже не вижу смысла в нем). Project – еще одна главная панель, в ней отображается иерархическое построение файлов проекта. Через нее же осуществляется навигация между классами, в ней же по правой кнопке можно создать новый класс, файл xml и еще много всяких приятных вещичек.
Переходим к нижней панели и видим там 4 вкладки, плюс одна неявная – всегда находится в развернутом положении и зовут ее Output. Это третья важная штука в интерфейсе, благодаря ей мы видим дубликаты RTE, все трейсы, ход компилирования программы и проч. Так как в ней отображаются порой уж очень многобуквенная информация, советую эту панельку так и оставить снизу. Сразу же скажу, что понятия не имею, зачем нужны вкладки Layouts, Logs и Tasks (о них подробно расписал iNils в комменатриях ниже). В них никогда ничего не отображалось, поэтому всегда их выключаю. Results. Четвертая панель, как всадник апокалипсиса, она враг флешера, она показывает ошибки, критикует строчки и бьет по пальцам указкой за отсутствие типизаций у переменных. Я, из-за боязни получить подзатыльник, оставляю ее в гордом одиночестве в качестве одной вкладки снизу. Я закончил и предлагаю разместить все панели по своему вкусу.
Вы уже решили, как будете работать: в связке FlashIDE + FD или же только в FD с компилированием через FlexSDK? Ежели первое, пропустите этот абзац и еще два.
Вооот, правильно, что отказались от компилятора FlashIDE. Это решение обернется для вас добром, обещаю. В чем плюс такого подхода: мы сокращаем число багов компилятора, кроме того, имеем гибкую настройку этого самого компилятора, избавляемся от постоянного всплытия на первый план FlashIDE (а если она еще и тормозит? Это же вообще жесть!). Что-то еще было приятное… А, имеем возможность делать Embed, также можем вставлять еще одну вкусность – тег [SWF] и много другое. Обо все об этом позже, даже, скорее всего, в следующих статьях. Для нас сейчас есть два важных дела, нам не дадут бонусов, если мы не выполним эти миссии. Во-первых, настраиваем трейс. Без этой настройки его не будет, а это очень печально.
Лезем в Tools – Programs Settings, вкладка FlashViewer. Видим поле External Player Path, загоняем в него путь к дебаг флеш плееру. У меня он сидит вот по этому адресу: C:\Program Files\Adobe\Adobe Flash CS5\Players\Debug\FlashPlayerDebugger.exe, но он же должен быть и на сайте Adobe. Указали, трейсы теперь должны работать как надо.
Вторая миссия представляет собой не спасение мира, нет. Она представляет собой проверку, вписался ли FlexSDK в нужное место, иначе мы ничего не скомпилируем. Tools - Programs Settings, вкладка AS3Context, там поле Flex SDK Location. Загоняем туда путь до папки с СДК. Вот теперь настройка закончена. Может быть, на первых порах все покажется страшным, но не пугайтесь, сходите и попейте чай.
А сейчас мы будем создавать первый проект. Выбираем Project – New Project, в появившемся окне выбираем проект по своим предпочтениям. Для AS2 + FlashIDE есть Flash IDE Project в разделе ActionScript 2, для AS3 + FlashIDE есть соответствующий проект в разделе ActionScript 3. Для выбравших чистый AS3 + FlexSDK есть AS3 Project и то же, но с прелоадером. Тут все должно быть понятно. Указали путь к папке сохранения, если нужно, указали пакет, назвали проект. Затем нажимаем ОК. Вываливается табличка с приглашением ввести имя автора. Эта штука будет подставляться в каждый шаблон класса и показывать, что это мы авторы, а не Вася Пупкин (если вы не Вася Пупкин, конечно же). Вот он – наш первый проект. Пока пустой и неприметный, с шаблоном из папок и первого файла Main.as или вообще без ничего. Но скоро мы это исправим, в следующей статье.
Всего комментариев 31
Комментарии
17.12.2010 01:21 | |
Цитата:
Сразу же скажу, что понятия не имею, зачем нужны вкладки Layouts, Logs и Tasks
Logs - Это примитивный логгер, у меня он отключен, так как пользуюсь своим. Tasks - позволяет в коде проекта, или в других файлах с разрешенными расширениями, описывать задачи (TODO) Например где-то в коде вы написали: После рефреша в Tasks, или после запуска проекта, FD сканирует файлы проекта, находит ваше описание и помещает задачу в панель. В результате, вы всегда можете посмотреть, что вы сделали, а что забыли и быстро перейти в данному месту. Кроме TODO, мы можете сами описать нужные вам ключевые слова и подобрать иконки к ним из списка включенных в FD, для этого нужно запустить файл FlashDevelop\Tools\icomp\icomp.exe, выбрать иконку и записать ее индекс У меня их целый набор Код:
TODO BUG FIX DEFINE RELEASE RC DEBUG TEMP Код:
229 197 32 127 461 486 153 196 необязателен Можно и так сделать |
|
Обновил(-а) iNils 17.12.2010 в 01:48
|
17.12.2010 01:52 | |
Цитата:
Сразу же скажу, что понятия не имею, зачем нужны вкладки Layouts, Logs и Tasks
|
|
Обновил(-а) dimarik 17.12.2010 в 01:54
|
17.12.2010 03:38 | |
Цитата:
Ну, значит, нужно начать более подробный рассказ с ссылки на дистрибутив. Вот раздел на форуме с самыми свежими версиями, качаем саму программу и FlexSDK
Ну, значит, нужно начать более подробный рассказ с ссылки на дистрибутив FD. Вот раздел на форуме с самыми свежими версиями, качаем саму программу и FlexSDK А вообще молодца! Для "переходящих" и новичков нужно упор сделать на автокомплит и автогенерацию + как заюзать компоненты флэша (подсказка: создать swc либо скачать где нибудь) + как поменять глупую комбинацию ctrl+sp+1 на alt+a (auto) )))))) отсебятина для более продвинутых: + asDoc + svn + шаблоны и сниппеты + как подключить ant (постараюсь написать) + как работать с дебагером( просьба к iNils) |
|
Обновил(-а) Котяра 17.12.2010 в 04:07
|
17.12.2010 08:38 | |
Ай, шайтан, забыл же ссылку прикрутить! "Вот" должны быть ссылкой.
Сейчас подрехтую статью. Большое спасибо, iNils, за подробный рассказ, отошлю за дополнительной информацией в комментарии. Цитата:
Есть такой плагин OpenTheDoc для FD, он показывает контекстный справочник по AS3 и соответственно переназначает F1
Цитата:
Для "переходящих" и новичков нужно упор сделать на автокомплит и автогенерацию
|
|
Обновил(-а) КорДум 17.12.2010 в 08:45
|
17.12.2010 10:16 | |
Цитата:
девственно чистыми глазами новичка
|
17.12.2010 10:37 | |
Ты так умело заманиваешь, что я вот почти соблазнился...
Но тут же возникает два вопроса о отношениях. FD и Java. FD и SVN. Они дружат? |
17.12.2010 11:27 | |
svn и git - да, но правда пока кривовато
java - нет. Для этого есть Идея и НетБинс |
17.12.2010 11:38 | |
Просто хотелось бы все это иметь вместе.
Потому что сейчас у меня в одном воркспейсе и ява и флэш. Одновременно запускаю и серверную часть и клиента. Все же в одном редакторе это удобно, когда и интерфейс знакомый и все остальное. Без SVN тоже не гуд. И еще вопрос. В параметрах запуска для флэш-приложений можно указывать то, что будет его запускать? То есть, грубо говоря, main.html, main.sfw или какой-нибудь контейнер, который мою свежескомплленную флешку и запустит. Пока что в Эклипсе с флэш-плагином это все есть. Но его небесплатность, конечно, смущает. |
|
Обновил(-а) ChuwY 18.12.2010 в 18:13
|
17.12.2010 11:41 | |
Цитата:
+ как работать с дебагером( просьба к iNils)
|
17.12.2010 16:11 | |
Цитата:
это такая мелочь по сравнению с тем, что даёт дебагер
|
17.12.2010 18:03 | |
Цитата:
И еще вопрос. В параметрах запуска для флэш-приложений можно указывать то, что будет его запускать?
То есть, грубо говоря, main.html, main.sfw или какой-нибудь контейнер, который мою свежескомплленную флешку и запустит. По поводу явы: можно поставить FDT как эклипс плагин и переключать перспективы в одном эклипсе. Но по мне переключать неудобнее чем иметь 2 открытых редактора. А по сравнению с клипсами FD всё же реактивный самолёт. |
|
Обновил(-а) Котяра 17.12.2010 в 18:05
|
22.12.2010 19:30 | |
А есть что подобное под Linux?
|
23.12.2010 14:44 | |
Цитата:
* Java 1.6+ is required for the Flex compiler for ActionScript 3 development.
|
23.12.2010 14:52 | |
эт я уже понял, где прописать в фд расскажите
|
23.12.2010 14:56 | |
Не нужно ее в FD прописывать.
|
23.12.2010 15:07 | |
Всё, разобрался во всём, работает.... буду оценивать ))
|
|
Обновил(-а) willis83 23.12.2010 в 16:00
|
24.06.2012 01:12 | |
http://www.flasher.ru/forum/blog.php?b=280
Вот, прочтите. Отказаться можно вполне. |
24.06.2012 23:27 | |
Спасибо большое!
Еще вопрос возник в процессе: во Flash IDE у меня имеется мувик со своим классом. Если конструтор этого класса вызывать теперь во FlashDevelop'е, то графика не отображается. Если же графику не связывать с этим классом, а в него (в класс) добавить переменную типа мувиклип и уже в эту переменную совать этот мувик, то все норм. Как-то можно решить эту проблему? Я понятно изложил суть или нужны примеры? ) И еще момент: в кнопках создал доп слой под звуки - во FlashIDE все работает как задумывалось, во FlashDevelop'е - не работают вообще. |
|
Обновил(-а) zxcv 25.06.2012 в 00:07
|
25.06.2012 17:46 | |
Не знаю, как решить такую проблему, но сам всегда использовал композицию.
|
25.06.2012 19:12 | |
Простите, а "композиция" - это што? ) Собственно, связка класс-графика?
|
26.06.2012 13:29 | |
Смотря что понимать под связкой. Это создание графического ассета (экземпляра графики-мувиклипа) в классе и управления им через ссылку. То есть не расширяя класс от граф. ассета.
|
Последние записи от КорДум
- Basic authentication и GET/POST запросы (20.03.2013)
- SOAP и Flash (19.12.2012)
- Бинарные сокеты в AS3. Часть 3 (13.07.2012)
- Бинарные сокеты в AS3. Часть 2 (13.07.2012)
- Бинарные сокеты в AS3. Часть 1 (13.07.2012)