Writing components in Flex, part 1

On July 30, 2008, Components,Flex - 5 Comments

Not too long ago, someone asked me for some tips and tricks to write good components in AS3. Not that I’m the best coder or the most structured person, but when you’ve build some components, you’ll find that you’ll run in the same problems over and over again. Most of the problems you can avoid by starting to write down what your component actually should do. So you first can close flex builder :-P .

For who is this tutorial? Well, I assume you’ve done some coding in AS3, so I won’t explain if-statements and for-loops. Anyone should be able to follow this tutorial, since there won’t be very exotic code in the examples. more…

ASDebugger: A run-time debugger for AS3 Projects

On July 2, 2008, Components,Flash,Flex - 1 Comment

When you’re developing an Actionscript project – Flash or Flex – you cannot live without a decent debugger. Flex provides quite a good debugger and the Flash IDE has also a reasonable debugger. The problem with those debuggers is that you have to build explicitly for the debugger. So when you’re deploying on a remote server, you don’t have those debug options.

The ASDebugger allows you to trace variables. It has support for strings, integers, arrays, dates, arraycollections, objects and everything in between.

Usage is simple, import the asdebug.as class in your application and call the debugger:

?View Code ACTIONSCRIPT
import nl.flplibrary.debug.ASDebugger;
import mx.collections.ArrayCollection;	
 
private function simpleDebug():void {
	ASDebugger.debug("<b>test</b>");
}
 
private function advancedDebug():void {
	var o:Object = new Object();
	o.my_string = "<i>string</i>";
	o.my_number = 123.456;
	o.my_int = parseInt("1");
	o.my_array = ["item 1", "item 2", "item 3"];
	o.my_arraycollection = new ArrayCollection([{label:"item 1", data: 1},
												{label:"item 2", data: 2},
												{label:"item 3", data: 3}]);
	o.my_object = {	label1:"item 1", data1: 1,
					label2:"<i>item 2</i>", data2: 2,
					label3:"item 3", data3: 3};
	o.my_date = new Date();
	o.my_xml = new XML();
	o.recurse = o;
 
	ASDebugger.debug_prop(o);
}

Before running the application, startup the ASDebugger. The ASDebugger comes in different flavors:

  • In a .exe projector file;
  • In a .swf;
  • As an AIR application;
  • or you can even use the ASDebugger on this page! more…