Archive for the ‘ActionScript 3.0’ Category

Средства программной анимации: где взять, что и получить за это.

Friday, February 1st, 2008

Большинство наверое использовала в своих проектах для программной анимации класс mx.transitions.Tween, так знайте он не одинок в своем роде). Кто его не видел — исправляетесь, прочитав его описание с примерами.

Всего существует несколько проектов, которые помогают программировать анимацию, в начале классы от “родного” производителя:

  • mx.transitions.Tween, есть как и в CS3 так и МХ-8 флешах )
  • mx.effects.Tween есть в как и в AS2 так и AS3 вариантах, AS3 примечателен тем, что лежит в основе всех эффектов используемых во Flex, в использовании не очень удобен, но терпим, он единственный доступен, по умолчанию, во флексе.

Оба класса имеют недостатки: если экземпляр класса описан как локальная переменная то мусорщик свободно может его убить и эффект не до играет до конца.

И классы от стороннего производителя:

  • Tweener (caurina.transitions.Tweener), домашняя страничка
    Радует поддержкой ActionScript 2.0, for Flash 7 and Flash Lite 2.0 ActionScript 2.0, for Flash 8, ActionSctipt 3.0, также портирован для JavaScript и haXe. Рост тоже очень радовался за него.
  • TweenLite, обещают быструю производительность и дополнительные настройки уравнений движения. Есть версия для ActionScript 2.0 и ActionScript 3.0, Страницы содержат описание, примеры кода и использования данного класса
  • AS3 Animation System v2.0 — много очень много разных плюшек, заточеных под AS3, нужно просто полистать документацию (лежит в архиве с исходниками лежит в архиве с исходниками )
  • GOASAP. Самый шустрый из твинов. Ребятки чтобы доказать это наваяли тесты производительности

Отдельно о тестах.

benchmark

Как видно из этой диаграммы cтандартный твин просто отдыхает, что есть обидно( а если учитывать ресурсоемкость флекс-фреймворка то это вобще плохо.

В данной статье я не рассматривал классы которые имею только AS2 версию, потому что это уже не актуально!



VIVA_INDIA, или будте внимательны когда описываете события

Wednesday, January 23rd, 2008

Есть класс который диспатчит событие и есть желание получить удобство написания кода когда подписываемся на события этого класса.

Для этого делаем так:

Класс события:

package com.the33cows.somepackage
{
import flash.events.Event;

public class SomeEvent extends Event
{
public static const VIVA_INDIA : String = "vivaIndia";
.......

}

Класс:

package com.the33cows.somepackage
{
import flash.events.EventDispatcher;

[Event(name="vivaIndia", type="com.the33cows.somepackage.SomeEvent")]

public class SomeEventDispatcher extends EventDispatcher
{
...
}
}

теперь при наборе кода получаем такое:

что есть очень приятно).

Я всегда себе задавал вопрос почему, адоб использует именно такую конструкцию

[Event(name=”vivaIndia”, type=”com.the33cows.somepackage.SomeEvent”)]

по-моемому было бы логичнее использовать

[Event(name=”VIVA_INDIA”, type=”com.the33cows.somepackage.SomeEvent”)]

т.е. прямую ссылку на константу хранящую конкретное название события, а не само название события, но так не найдя на него ответа, решил, что так нужно и парсер “умный”, он сам на лету привязывает конкретную константу с именем события к этому тегу.

Оказалось парсер безумно туп!

У меня образовалось событие в названии которого были несколько прописных букв подряд

для наглядного примера:

public static const VIVA_INDIA : String = "VIVA_INDIA_OMG";

для него метатег выглядел так

[Event(name="VIVA_INDIA_OMG", type="com.the33cows.somepackage.SomeEvent")]

на что я в ответ получил:


Правда не очень привлекательная картина? )

Справедливо как для 2.0.1 так и для 3 го билдера

Будьте счастливы и кодируйте с миром ).



Мелочи

Monday, December 24th, 2007

Давно что-то не писал, накопилось много мелочей о которых иногда полезно знать, а иногда просто не стоит обращать внимание:

  • Во флексе есть фича что он автоматом лишнии убирает пункты меню которое появляется при нажатии правой кнопки мыши. Это приятно, но стоит знать что при создании попапа с помощью PopUpManager этой фичи нету (все пункты меню имеют место быть) и их нужно отрубать ручками.
  • ФФ, делаем так: открываем приложение (желательно тянущееся чтобы наглядно было), открываем второй таб, переходим в него, ресайзим окно браузера, и возвращаемся на наше приложение и видим бяку: флеш и не думал ресайзится (повторный ресайз исправляет ситуацию)).
    UPD: решение проблемы подсказал 7htsky : “надо поставить margin: 1px 0 0 0, нашли решение тут
  • Ситуация: есть ваш компонент наследованный от чего-то и его нужно использовать вместо стандартного, внутри используются стейты (например ваш мега TitleWindow внутри него 48 состояний) если стейты объявиться <mx:states /> то будет ругаться, стейты нужно объявлять просто <states />
  • Все лаяут контейнеры (Canvas, Box…) плохо дружат со скроллерами (также как это делает ИЕ) — если ширина контента выставлена 100%, а по высоте контент больше чем контейнер то появляются 2 скроллера вертикальный и горизонтальный причем горизонтальный скролит именно на ширину появившегося вертикального скроллера (не приятно это, то ли дело ФФ 🙂 )
  • Проекта MyLar больше нету,его переименовали в Mylyn. Почитать что это за птица.
  • Флеш блох оказывается очень много ) и они часто появляются.

Глобальные посты и темы будут попозже — сейчас идет подготовка к новому году)



Веселые старты на Flex|ActionScript 3.0

Tuesday, November 27th, 2007

Что стартуем

Стартуем курсы по Flex, ActionScript 3.0

Для чего стартуем

Научить людей основам(и не только) Flex, ActionScript 3.0, в процессе обучения написать живое приложение.

Кому стоит читать дальше

Молодым амбициозным людям которые только начинают свою “флешово-флексовую” жизнь, и хотят попрактивоваться. Всем кто уже “напрактиковался” в своей жизни советую прокрутить конец поста и почитать пункт “Flash|Flex для больших дядей” :).

Более подробная информация:

Кто это организует и кто будет рассказывать

Организую эти курсы я, я же буду и рассказывать страшные истории.

Место веселых стартов

Курсы будут в г. Харькове. Вероятно в ХАИ.

Кого я жду на курсах?

Жду я человеков, которые:

  • Хотят получить знания по Flex|ActionScript3.0
  • Живут в Харькове
  • Имеют базовые знания по программированию, ООП и писали программы сложнее Hello World на любом из языков (имеют понятие, что такое массив, цикл ,класс…)
  • Способны самообучатся в заданном направлении )
  • Видели английский язык и понимаю как минимум 1 слово из 10 прочитаных 🙂
  • Учитывая что “веселые старты” – это проект не коммерческий я ожидаю адекватное поведение людей, выполнение некоторых требований и ответственности

Чем я буду веселить человеков

Я буду веселить человеков написание программ на флекс на примере конкретного приложения. В веселье будет входить:

  • Введение в науку (что где пыцкать чтобы заработало)
  • Немного теории и практики проектирования приложения, паттерны проектирования. Пощупаем немного UML
  • Создание и использование компонентов
  • Стилирование компонентов
  • Общение клиент/сервер (вероятно на примере AMFPHP)
  • Разные страшные слова типа биндинг )
  • Работа в комманде
  • Где и что искать, кого спрашивать
  • Другие разные плюшки

Для чего это мне нужно

Мне это нужно потому, что я хочу:

  • Эксперементов на живых людях.
  • Попробывать себя в качестве “Умного дядьки”, возможность покапать глубже некоторые темы
  • Нести знания в массы и пропагандировать любимую технологию
  • Помочь людям которые хотят и могут учится, помочь сделать это быстрее
  • Помочь ВУЗу где я учился
  • Немного растормашить отечественных флешеров/флексеров

Что это даст человекам

  • Знания и опыт
  • Быстрый старт
  • Общение с новыми людьми
  • Хлеба и зрелищ

О каком конкретном проекте идет и почему я решил это все организовать

Есть интересный проект, который неплохо бы сделать в качестве гуманитарной помощи моему вузу — ХАИ. Этот проект совершенно не коммерческий и я не получу от его написания никакой выгоды кроме морального удовлетворения. Кроме него, у меня есть другие интересные проекты приоритет которых выше. Поэтом я предлагаю такой вот обмен – код за знания. Более подробно о проекте – в процессе, но обещаю, что будет интересно.
В проекте есть пара вещей, которые потом можно будет развить в отдельные проекты и получать из них выгоду при желании, если у вас канешно это получится;). Никто не будет против если вы это сделаете.

Организационные вопросы

Мои контакты есть в блоге.
Я рассчитываю найти несколько адекватных желающих (1-5 человек, дальше как получится). Неадекватных людей, попрошу не беспокоить, ибо делать тут им нечего.
Интерсивность курсов зависит от активности учашихся, для себя я планирую 1-2 встречи в неделю по 2-3-4 часа.
Стартовать надеюсь будем после Нового Года).

Flash|Flex для больших дядей

Для больших дядей есть отдельные предложения. В процессе веселых стартов, можно организовывать встречи и устраивать показательные выступления для других дядей, ну или просто поболтать и поесть мороженого (этак раз в 1-2 месяца, г. Харьков).
Ну и большая просьба для флешеров и флексеров попиарте это предложение среди харьковских знакомых студентов 🙂

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



ClientSide-2007, отчет с передовой от Constantiner

Monday, November 12th, 2007

Constantiner делится своими впечатлениями о ClientSide-2007. Захватывающий отчет с передовой. много хороших и интересный ссылок и новостей, самая привлекательная для меня это

Так что не исключено (тьфу-тьфу-тьфу), что в скором времени у нас будет Flash Platform User Group или что-то в этом роде. Которая будет двигаться силами заинтересованных ведущих разработчиков России при поддержке Adobe. Ориентировочно это будут ежемесячные встречи с докладами в Москве и, возможно, в Питере.

Интересно когда у нас начнется что-то подобное? Ведущие разработчики Украины, не желаете что-нибудь организовать, не с таким канешно размахом, но все же? Я например могу организовать аудиторию с компьтерами, проектором, в НАУ “ХАИ” (Харьков, Украина), где можно будет поделится опытом или просто обсудить на примерах проблемы человечества и вселенной )




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