views:

364

answers:

5

I knew ActionScript and ActionScript2 inside out, but I've been away from Flash for a couple years. What's the magnitude of becoming fluent in ActionScript3 and the new Flash functionality? From Colin Moock's blog, I heard that some of the fundamental movieclip methods have changed...

+2  A: 

I would say it depends on the level of your AS2 (and general OOP) knowledge. If you're used to objected-oriented programming and strong typing the learning curve shouldn't really be that steep.

I was brought up as a java programmer and find that the new concepts in AS3 are for the most part easy to grasp and that the API is a lot more consistent and makes more sense than in AS2.

Kristian J.
+1  A: 

Actually AS3 is much better.. more like C# or Java, with consistent API, naming, packages. It is pleasure to use AS3 while using AS2 is often hell.

And that's the problem. If you are used to AS2 with it quirks, hacks needed here and there.. fast and dirty ways.. then AS3 isn't simple to get used to. But in long run it really worth it. And anyway.. AS2 is the old one.. dead one.

Jakub Kotrla
+4  A: 

You've probably already seen the as2 -> as3 migration doc?

Sure, some syntax has changed but if you know as2 well writing as3 won't be a problem at all. Some weird things may come up in the beginning with the syntax, but that's just checking the documentation for the new way of doing it. If you're hacking yourself through as1 & as2, as3 may cause some headaches since it's much stricter (doesn't allow you to do stuff you shouldn't do anyway) ;)

You'll probably be fine with as3 in less than a week.

Antti
That migration doc was essential for me, great link!
UltimateBrent
Aha! I had not seen that doc. Thanks much!
Chris Dolan
A: 

Actionscript3 is indeed far different in many ways, but it is important to realize that you are merely memorizing built-in packages, classes, properties, and methods as similar to learning prior versions. Some of the larger hurdles to get over are the Display list and events (event flow > Example: Bubbling). Much of the language has been changed to the developers advantage, such as a unified way of loading dynamic assets with the Loader class for display objects or the URLLoader class for loading data such as XML and CSS, or calling a php script. Once you feel confident with some of these new aspects of the language you can begin extending prior classes or creating new ones. Actionsscript3 may have a steep learning curve, but the opposite side of the hill is almost equally as steep!. After you have your eye opening, "OH, I GET IT!" moment, it is an addictive and thrilling ride. The possibilities become seemingly limitless and soon your developing whatever comes to mind!

I suggest that anyone that wants to learn proper techniques, conventions, and workflow, please head to http://www.gotoandlearn.com where Lee Brimelow does an excellent job displaying leading edge techniques and effects. Lee also authors http://theflashblog.com which I personally check daily.

Brian Hodge
A: 

Antti's spot on with the link to the migration doc.

Colin Moock also starts a discussion about the similarities and differences between AS2 and AS3 and calls on Adobe and the Community to sort them.

In the latter article, he brings up 10 solid WTFs about the move to AS3, explaining each problem and then including "What Should Adobe Do" and "What Should We Do" sections for each:

  1. The removal of on()/onClipEvent() from Flash CS3 makes creating simple interactivity hard.
  2. Getting rid of loaded .swf files is hard.
  3. Casting DisplayObject.parent makes controlling parent movie clips hard.
  4. The removal of getURL() makes linking hard.
  5. The removal of loadMovie() makes loading .swf files and images hard.
  6. ActionScript 3.0's additional errors make coding cumbersome.
  7. Referring to library symbols dynamically is unintuitive.
  8. Adding custom functionality to manually created text fields, to all movie clips, or to all buttons is cumbersome.
  9. The removal of duplicateMovieClip() makes cloning a MovieClip instance (really) hard.
enobrev