>>Flash, on the other hand, does a completely crap job of dealing with data
Flex, on the other hand does a completely crap job of dealing with animation.
And a completely crap job of dealing with assets and building a gui with nested
movieclips containing animation(s).
>>Their primary use case was that you point it to an external XML file and
that's the extent of what "data driven" means in their world. Using the words
"strongly typed objects" on their forums resulted in virtual blank stares.
Just like in the Flex 'realm' developers have written all kinds of libraries
to provide additional 'features'. Someone came up with Degrafa for Flex and
another one wrote a wrapper for remoting in Flash. I don't know about you, but
I highly respect guys like Grant Skinner and Colin Moock who both primarily
code for Flash. In the end, the result matters, not if you know what a strongly
typed object is. I've seen amazing projects that were done with code on the
timeline and I've seen projects that were done the 'programmer way' and made me
feel sad... Equally I've seen designers write code a programmer could only wish
he or she wrote.
>>The Flash environment is better for graphically-heavy applications. Simple
games without a lot of internal logic, animations, displays...whizzy things.
>>The Flex tools are better suited to code-heavy applications. Traditional
applications with user input forms, lots of low-level disk or network I/O and
calculations...serious things.
That probably doesn't even scratch the surface of when and how to use the
Flash and Flex tools. In fact, this is in my opinion complete nonsense.
In the end the OP probably answered its own question best: Is Flex then a new
set of classes that simplifies the development of Flash?
Well, almost. The Flex framework is an extra set of classes on top of the
existing Flash framework of classes. Both are organised in what is called
'packages'. The Flash framework consists of the flash. and fl. packages, see
http://help.adobe.com/en_US/AS3LCR/F...0.0/index.html
The Flex framework consists of the flash. and mx. packages, see
http://livedocs.adobe.com/flex/3/langref/
And you do not develop 'Flash', you develop swf content that can be
interpreted by the Flash Player plugin.
Ultimately ActionScript is what drives it all and you will learn how to use
the different tools along the way. There is no ready made answer when to use
Flash or Flex. Some things can be done better in Flex, other things are more
efficiently done in the Flash IDE. Using them together is also a nice
solution...