January 10, 2007

Flash Development

Понадобилось мне тут написать пару утилиток для развития бредогенератора, одна из них представляет собой упражнение "лингвистические пирамиды". (курите яндекс по этому поводу или не забивайте себе мозги :). Поскольку нужна было кросс-платформенность (чтобы работало на покете и десктопе), был выбран флеш в качестве платформы. Раньше на флеше ничего подобного не делал, только саааамую мелочь там, картинку нарисовать.

Вобщем, результат можно по ссылке скачать, делалось с расчетом на наладонник в первую очередь. Теперь мои мнения о флеше в этом качестве:

1. Редактор кода (expert mode меня интересовал только) неудобный до смерти: не работают комбинации Ctrl + стрелки, Ctrl+insert и подобные. Только Ctrl + C/V/X итп сочетания, к которым я не привык, работают. Еще там нету выравнивания по tab... короче, очень плохо. Внешний редактор туда не прицепить, а копировать куски по три строчки кода туда-сюда - занятие не из приятных. Все дело в том, что там к каждому фрейму и кнопочке свои куски кода, т.е. нету полного листинга, если можно так выразиться.

2. Примерам в составе Flash MX оценка хорошо. Практически все узнано из них.

3. Справочная система - плохо. Сама справка сделана в виде HTML, открывается в експлорере. Поиск у меня по ней не заработал, в индексе нету кучи всего нужного. Есть еще встроеный браузер по описаниям функций, свойств и операций, он немного удобнее, но поиска как такового тоже нету :(. Есть только дерево по объектам. Сами описания сделаны тоже неудобно, примеры в описании почти отсутствуют. Вобщем, изучал по примерам из поставки.

4. Возможности встроенного скрипта - хорошо. Все, что было надо - можно сделать. Даже с XML можно работать, грузя его из веба. Ко всем объектам сцены есть доступ из скрипта (кроме graphics, почему-то для него не задать instance name. Но вместо него можно исмело юзать movie clip). Кроме того можно использовать local storage (типа cookies), веб-камеру, микрофон и еще чего-то. Математика тоже поддерживается хорошо, вся работа с вещественными числами на месте.

5. Синтаксис скрипта из себя представляет помесь JavaScript с неизвестно чем. "Неизвестно что" проявляет себя при описании функций, событий и переменных. В остальном проблемм любителям C++ подобного синтаксиса не наблюдается. Для просветления необходимо курить примеры. (кстати, в рунете инфы по скриптам флеша я чего-то не нашел практически)

6. Нагруженность... Ну на этот счет у меня свое, особое мнение о том, что за пару дней можно разобраться с любой платформой. Флеш не стал исключением. Вобщем, несложно. Но недостатки справочной системы тоже делают свое дело :( Зато, после пары дней работы глюков не припомню, ни одного. Видимо, их небыло. Или не заметил :)

Вывод: хорошая штука для своих задач. Свои задачи в себя включают навороченный графический интерфейс (можно использовать Flash ActiveX-контрол для любых приложений), простых приложений (типа психологических тестов, конвентеров и пр.), и еще хорошую замену веб-апплетам java. Самый большой минус - под цифрой 1. Самый большой плюс - кросплатформенность :) (щаз некоторые mp3-плееры и новые мобильники SonyEriccson тоже держат флеш без проблемм)

а вот собственно сцылка: http://eugene.home.nov.ru/lj/bredogenerator-one.swf