Архив

Архив раздела ‘Мысли вслух’

Эмуляция типа enum

17 Октябрь 2009 6 comments

Java сильно влияет на ActionScript разработчиков. Сегодня я попробую эмулировать тип данных enum из Java.

Например вот так:

package {

	public class Fruit {

		public static const Apple:Fruit=new Fruit(0);
		public static const Pear:Fruit=new Fruit(1);
		public static const Peach:Fruit=new Fruit(2);

		private var _value:int;

		public function Fruit(value:int) {
			_value=value;
		}

		public function get value():int {
			return _value;
		}
	}
}

этот вариант «более правильный и изящный с точки зрения архитектуры», однако я почему то предпочитаю вариант попроще -«некрасиво и убого, не нужно так писать»:

package {

	public class Vegetable {
		public static const Tomato:int=0;
		public static const Onions:int=1;
		public static const Cucumber:int=2;
	}
}

К тому-же он работает в два с лишним раза быстрее. Но придется все таки изучать правильные и архитектурно изящные варианты. От этого зависит буду я хорошим программистом или говнокодером...

Веселая реклама антивируса

Джеки и Евгений победят вирусы вместе :)

Categories: Видео, Мысли вслух Tags:

Я верю, настанет конец нашим страданиям

Этот клип произвел на меня в свое время неизгладимое впечатление... и сейчас тоже.

Люблю мультики

124535368655

Подсмотрел на http://www.0chan.ru/

Categories: Мысли вслух Tags:

Снова на MXNA

После длительного перерыва я снова на Adobe Feeds.

Трейлер "Танки Онлайн"

1 Июнь 2009 1 комментарий

Гооголь…

1 Апрель 2009 Нет комментариев

Ребята из Google тоже уважают Гоголя

Наши на Twitter-е

1 Апрель 2009 Нет комментариев

Решил поглядеть, что же за Twitter такой.

Посмотрел, нашел Лешу и Роста, прикололся, подсел :)

Categories: Мысли вслух Tags:

Радиоконструктор "Юный электроник"

7 Март 2009 1 комментарий

Случайно набрел на публикацию о радиоконструкторе "Юный электроник" в блоге sfrolov:

Юный электроник

У меня был такой в детстве :) эх... натольгия.

Categories: Мысли вслух Tags:

продолжая разговор об Object

6 Март 2009 5 comments

Читая комментарии к предыдущему посту я было усомнился в своей точке зрения. И решил провести тест. В итоге имеем класс Item:


package {
	import flash.display.Bitmap;

	public class Item {
		public var label:String;
		public var data:int;
		public function Item(_label:String, _data:int):void {
			label = _label;
			data = _data;
		}
	}
}

и собственно тест:


package {
	import flash.display.Sprite;
	import flash.utils.Timer;
	import flash.utils.getTimer;

	public class Test extends Sprite {
		private const COUNT : int = 1000000;
		public function Test() {
			var list1 : Array = new Array();
			var list2 : Array = new Array();
			var begin : int;
			var end : int;
			var i : int;

			begin = getTimer();
			for (i = 0;i < COUNT; i++) {
				list1.push({label:"str", data:i});
			}
			end = getTimer();
			trace("time for simple Object: ", end-begin);

			begin = getTimer();
			for ( i = 0;i < COUNT; i++) {
				list2.push(new Item("str", i));
			}
			end = getTimer();
			trace("time for class Item: ", end-begin);
		}
	}
}

В итоге у меня получилось 1730 и 2100 миллисекунд для Объекта и Класса соответственно.

Categories: Мысли вслух Tags: