ForumsProgramming ForumWhat is the difference? (Flash, Flex, and AIR, oh my!)

3 9216
IQAndreas
offline
IQAndreas
299 posts
Peasant

For several months, I was under the impression that the only way to make games and apps that compile into the SWF format was using Flash CS3/CS4.

However, recently, I have heard from various places about Adobe AIR, Flex, and Flash Develop.

What is the difference between all of these?
What formats does each one support?
How much do they cost?

Also, what is the difference between the AIR SDK or Flash SDK and regular AIR and Flash?

  • 3 Replies
BehemothBoy
offline
BehemothBoy
33 posts
Nomad

All I know is that AIR is used to turn web apps into desktop apps. I think :P

Erasmus_Darwin
offline
Erasmus_Darwin
59 posts
Nomad

I may get some of the terminology and details a little wrong since I'm still relatively new to Flash, but I think this is an accurate enough overview:

Flash - Vector-based animation package that, over time, has developed scripting and gradually gotten more complex and supported more interactive results to the point where it's used for things like complicated Flash games and other such stuff. Can be scripted with AS2 and AS3 and compiles to the well-known SWF format. Flash is part of the CS3/CS4 packages, which are in the high hundreds / low thousands. There's also different versions of the package available, so make sure the one you get has what you need.

Flex - Adobe, recognizing that Flash had grown well beyond its humble beginnings, created Flex which is essentially Flash for Developers. Under Flex, your project no longer revolves around a timeline and frames. Can be scripted with AS3 and MXML and compiles to the same well-known SWF format. I believe Flex Builder is a modest $250 or so.

MXML - An XML variant that lets you specify the non-code bits of a SWF. This essentially replaces the GUI application-building (such as dragging and dropping a button) that you'd do in the Flash IDE.

Free Flex SDK - An SDK that includes the Java-based Flex compiler that turns AS3 and MXML into SWF. So with this free download, a text editor, and some patience, you can build SWFs. Did I mention it's free?

FlashDevelop - A free Windows-only editor for editing AS2, AS3, MXML, and other stuff. It can compile AS2 into a SWF using the free tools MSTASC and Swfmill (included in the package), and it can compile AS3 and MXML into a SWF if you download the Flex SDK and tell FlashDevelop where it's located. Also, you don't really need to know MXML to get it to compile -- I've been getting by so far with just AS3 knowledge, though I plan to pick up MXML at some point. So with free FlashDevelop and the free Flex SDK, you can create SWFs for free, as long as you're comfortable with code.

AIR - An enhanced API and separate runtime for Flash applications centered around desktop support. A program written for AIR can do all the fun things that the normal, web-based Flash player can't, such as catching the middle and right clicks. I'm fuzzy on the details, though. Not really relevant if you're just interested in making Flash games to go up on the web, but it might be worth looking into if you want to have a more fully-featured downloadable version of your game. For the most part though, if you see "(AIR only)" in the documentation for a feature in the Flash API, that translates into "tough luck".

illegal
offline
illegal
1 posts
Nomad

AIR addition to the actionscript 3 language that provide ways to control features from windows, mac, and linux. eg the titlebar and saving files.

Flex is an addition to the actionscript 3 language that provides way to new interrogation features from server technologies like java, php, asp and connection between multiple flash applications and databases.

Flash (CS4) can include AIR code but doesn't include Flex code. the server technology in Flash is limited but exists. Flash includes the GUI that stream lines developing. Like vector based graphics, filters, and components. Also more documentation and examples because it's easier to rewrite classes from Flex into Flash then rewriting Flash code for classes.

Where in Flash you have a button, radio button, dropdown, or menu for every property of a movieclip, image, button. Where in Flex you can write all these properties/options by simply copying pasting, and tweaking the raw code.

Showing 1-3 of 3