Производительность и Flex Component Kit

June 22, 2009 – 6:32 am

Все наверное слышали и знают о Flex Component Kit для Flash CS3 и о том как его использовать его для скинования.

В кратце действия очень простые — вашим клипам которые вы желаете использовать в качестве скина данный экстеншин проставляет базовым классом mx.flash.UIMovieClip, который “почти как” UIComponent.

Штука хорошая, компоненты работают с ней хорошо, есть возможность задавать стейты у скина как ключевые кадры у мувиклипа, но есть одно но. UIMovieClip имеет такой код:

public function UIMovieClip(){
            validateMeasuredSizeFlag = true;
            _measuredMinHeight = 0;
            _measuredMinWidth = 0;
...........
            super();
            addEventListener(Event.ENTER_FRAME, enterFrameHandler, false, 0, true);
        }

т.е. он всегда(!) подписан и слушает событие Event.ENTER_FRAME и метод обрабатывающий его довольно “большой”. А это уже прямое покушение на производительность — несколько таких скинов еще нормально, а вот сильно заскиновнное приложение может пострадать. На чем я и попался, выставил скин для редереров в чартинге.

Так что будте осторожны при использовании Flex Component Kit в скиновании.

Удачи!


Skyfire – мобильный браузер с поддержкой Flash 10!

June 16, 2009 – 1:18 pm

Вышел Skyfire мобильный браузер с поддержкой большинства фич web 2.0

Browse your favorite websites on Skyfire exactly like you do on your PC. No compromises! We’re the only mobile browser to support all major Web 2.0 standards – Ajax, Javascript, Flash 10 – it just works.

И про Ajax, Javascript, Flash 10 они совершенно не врут я попробовал несколько сайтов писаных на ActionScript 3.0 для flashplayer9|10 и они работают! Работает видео, работают флекс приложения!

Я даже запустил демки Alternativa3d ! и они идут.  Правда тормоза отличные )

Встретились и проблемы с позиционированием курсора (в некоторых случаях) если говорить о flash.

А так я считаю что это супер прорыв. Всем качать ставить на мобилки и смотреть!


Контрастный текст на фоне произвольного цвета

May 10, 2009 – 4:11 pm

Недавно встала задача найти алгоритм как сделать контрастный текст на фоне произвольного цвета.

В начале я поэксперементировал с HSL и HSB представлением цвета. Для HSB я нашел алгорим на ActionScript 1, экспортнул его, но он оказался глючным. Поискав далее я нашел класс HSBColor от Adobe на ActionScript3. Его нет в 3 flexframework и как я понимаю это запчасть от Gumbo (Flex 4). Работает он хорошо, но не решает нужной мне задачи: в синих оттенках текст не контрастный.

Затем в чате UAFPUG мне посоветовал Nicolas Prof пример от Lee Brimelow, пример работал отлично, но был написан на ActionScript 2 и использовал класс ColorMatrix от Quasimondo. Я было уже совсем расстроился, но Татьяна Белая быстренько портнула класс ColorMatrix на ActionScript 3.0 и вместе с ним пример.
Я немного изменил пример, можно полистать, как по мне работает на отлично:

Пример контрастного текста отдельной страницей

Исходники по правой кнопке мыши или в архиве.
Удачи!


UAFPUG 9, мой доклад о Eclipse Monkey

May 1, 2009 – 3:23 pm

Непрошло и пол года как я подготовил исходники и написал пост о моем докладе на UAFPUG, который был 28 февраля, этого года.

Мой доклад назывался
“Eclipse Monkey — безграничный функционал Flex Builder’а.” как можно догадаться был посвещен прикручиванию Monkey скриптов к Flex Builder’у

В начале небольшая призентация:

По ходу призентации я приводил примеры использования скриптов. В правом углу некоторый слайдов есть метка E> это означает, что вместе со слайдом был пример кода. Примеры скриптов лежать в архиве у меня или в проекте monkey-for-flex на гугл коде. Примеры простые и не очень :).

Непростой пример посвещен использованию модели кода Flex Builder в Monkey Eclipse. Пример лежит в файле create-interface.js Данный пример генерит методы и свойства которые объявлены в выбраном интерфейсе, используя модель кода Flex Builder. Чтобы получить код нужно выделить в коде имя интерфейса и нажать Alt+m и в консоле будет выведен код. Остаеться его только скопипастить. Данный пример не является эталоном работы с моделью кода Flex Builder, это лишь иллюстрация возможностей Eclipse Monkey.

Еще я хочу обратить ваше внимание на библиотечки, которые я написал для более удобной работы.
Эти библиотеки лежат в папке com/the33cows/monkeylib

flexutil.js
Содержит методы для работы с текстовыми редакторами, как обычными так и MXML и CSS редакторов Flex Builder (Получение редактора, добавление текста, перемещение курсора). Библиотека не доделана, но с базовыми вещами справляеться нормально. Приветствуется добавление своих методов и/или советов, критики :)

templateUtils.js
Служит для работы с темплитами кода. В файл нужно прописать путь к каталогу где будут храниться файлы с темплитами

this.templateRoot = "< YourPathToTemplates >/templates/"; 

использование до безобразия простое


include("com/the33cows/monkeylib/templateUtils.js");
...
var tmpl = getTemplate("public-method.tpl"); // загрузили темплит из файла
tmpl = tmpl.replace(/{comments}/g, coments); // заменяем переменные на значения

переменная tmpl содержит строку с кодом, дальше с можно поступать как угодно.

Если есть каки-то вопросы, задавайте. Если есть какие-то пожелания, делитесь) Удачи.


Командная строка и пользователи

May 1, 2009 – 2:32 pm

Я не люблю командную строку, это зло. Вернее не люблю программы/утилиты с которые работают только из командной строки. Я считаю, что нормальная программа должна предоставлять нормальный UI для работы с ней или хотя бы с большиством ее возможностей. К тому же UI должен быть интуитивно понятный.

В современно мире, количество информации растет очень быстро и человек (т.е. Я) не может запомнить все. Да и порой не нужно просто запоминать всякие вещи которые будут использованы единожды (или настолько редко, что смысла запоминать нет). Поэтому понятный UI должен решать эту проблему “Запустил и все понятно”, но это утопия этого, к сожалению, никогда не будет, тем более в мире опенсурса. А очень жаль.



]]> rss о RIA от 33 Коровы
Забадать RSS!
]]>
~~~~~~