Source Code Licenses and Flash/Flex by Grant Skinner

October 4, 2009 – 6:08 pm

Год с хвостиком, назад Grant Skinner написал статью Source Code Licenses and Flash/Flex, а один человек(который Илья ALFer) начал ее переводить и потом просто забил на неё :) . Я вместе с женой решили ее перевести до конца, итак ниже вольный перевод и немного фраз от меня :

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

Read the rest of this entry »


Flash Builder 4 и генерация геттеров/сеттеров или как это сделать “Супер удобно”

September 8, 2009 – 12:01 am

В Flash Builder появилась созможность генерации геттера/сеттера для переменной.

Адоб просто бъет все рекорды по “адобству” использования.

чтобы сгенерить геттер/сеттер нужно набрать объявление переменной, ее тип, наводим курсор на набраный текст и тут 2 варианта:

  1. Главное меню -> Source -> Generate Getter/Setter…
  2. Правой кнопкой мыши-> Source -> Generate Getter/Setter…

И появляется оно — окошко генерации:

Flash Builder 4: Generate getter/setter window

Лично я не представляю как можно было извратить простую идею генерации небольшого кусочка кода. Вот скажите, зачем мне нужно каждый раз это окошко? Мало того что там несколько полей и галочек, так Flash Builder 4 еще ничего и не запоминает. И каждый раз мне нужно делать одни и те же действия (я предпочитаю вставлять геттеры/сеттеры прям на месте).
А еще мне нравится кнопка превью, наверное человек делавший этот функционал считает, что перед вставкой геттера/сеттера нужно хорошо настроиться, подготовиться, обдумать свое действие и только после этого его выполнить.
Лучше бы сделали темплит кода для этой процедуры (я не говорю даже о глобальном функционале).

Также после перехода на Flash Builder 4 меня подстерегла глобальная засада — изменили коди иерархию объектов в плагине билдера и мои Eclipse Monkey скрипты перестали работать(. Нужно заново изучать чего они натворили и переписывать.

Я все чаще и чаще задумывають над тем чтобы перехать на IDEA. )

Ну и в качестве бонуса:
Главное меню -> Window -> Preferences -> General -> Keys, в фильтр вбиваем Getter выбираем Generate Getter/Setter, кликаем в поле Binding и жмем свою заветную комбинацию клавиш по которой будет вызыватся окошко генерации геттера/сеттера.


Flex Data Binding в чистом AS3 проекте

September 6, 2009 – 6:23 pm

Все “знают” или покрайней мере слышали, что флексовый байндинг не работает в ActionScript 3 проектах, или слышали что он работает, но при этом занимает много места. Из за этого было написано, некоторое количество велосипедов(не мной — другими людьми, если поискать то решения 3 точно можно найти).

Но стороние решения — это плохо, у нас теряется связь с flex проектами.

Года полтора назад передомной встала задача, использовать одни и теже классы в AS3 проекте и во flex проекте, а т.к. большая часть этих классов была обычными байндабл VO, то приходилось в AS3 проекте просто вырезать метатег [Bindable] или попросту делать клонов нужных VO. Благо проект был совсем небольшим и на эти неудобства можно было закрыть глаза.

На днях я таки решил снова попробовать подключить байндинг в AS3 проект, все получилось и на радость мне все оказалось очень хорошо — flexframework доработали и убрали лишние зависимости, теперь флешка с включенным байндингом занимает около 5 кб (релиз версия)!

вот простой пример кода:

package {
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import flash.events.MouseEvent;
 
	import mx.binding.utils.BindingUtils;
 
	[SWF(backgroundColor="#ffffff")]
	public class DataBindingSample extends Sprite
	{
		[Bindable]
		public var stageY:Number = 0;
		[Bindable]
		public var stageX:Number = 0;
 
		private var circle:Sprite;
 
		public function DataBindingSample()
		{
			stage.scaleMode = StageScaleMode.NO_SCALE;
            stage.align = StageAlign.TOP_LEFT;
 
			circle = new Sprite();
			circle.graphics.beginFill(0x55aaFF,1);
			circle.graphics.drawCircle(0,0,10);
			circle.graphics.endFill();
			addChild(circle);							
 
			BindingUtils.bindProperty(circle,"x", this, "stageX");
			BindingUtils.bindProperty(circle,"y", this, "stageY");
 
			stage.addEventListener(MouseEvent.MOUSE_MOVE, changePosition);
 
		}
 
		protected function changePosition(event: MouseEvent): void
		{
			stageX = event.stageX;
			stageY = event.stageY;
		}
 
	}
}

Скомпилированый пример:

Flex Data Binding in AS3 project sample. You need to install adobe flash player 10 to view this content

Всем удачного кодирования!


Производительность и 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.

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



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