I'm a JS newbie. What other output would be more desirable and why?
Well, I am JS newbie too. I guess even bigger than you ;)
But after Adobe ceased a fire on Flash Mobile Plug-in (that was 3times
faster in execution speed that any JS comparable code on flash capable
mobile devices) I've spent some time on JS target. Especially when
comes to JS and OOP. I have been running many tests and comparing
efficiency and performance against the style you can choose from when
writing JS.
This very subject is a bit 'liquid' as browser vendors seems to do a lot
of work in favour of trends instead art of programming and sane logic,
but in general standard JS prototyping seems to be more efficient
solution. (Why I think this is wrong? Because they speeding up features
of stuff like jQuerry or literal notation based frameworks and sacrifice
the performance of standards of Ecma script, is not a addition, but
trade-off, they adjusting technology to popularity of 3rd party solutions )
Some small tests involves jQuery and literal notation based frameworks
shows that they gaining some speed over the time, sometimes they proved
to be faster. (something that wasn't true just a year ago at all). But
still, when comes to a bigger structures and applications (when I
believe this is what flex is about) more objects to deal with, standard
prototype seems to be more efficient. And here is a little example of
the very nature of this problem:
http://jsperf.com/object-create-with-object-literal-vs-prototype
We don't know what future will bring, maybe they will go crazy and
built-in jQuery interpreter in their browsers, or do more crazy things...
I am not saying that current output is wrong, but did you consider
different styles? Or at least have a choice to spit out a code in the
way you can configure, specify some rules of AST?. Take a look at HaXe
output for instance.
I don't care if the output code is ugly and messy. What I do care about,
is that this very code is the best performer. I am writing AS3/Flex code
for clarity and speed of production, and what I expect is the best
performance on the other side. No more slow downs and bloated stuff.
Because it will only tell people, pick one of the native JS framework if
you need to develop RIA application for HTML5. The last thing Flex need
is reputation of over-bloated stuff on the future platform of the web.
Do this the best way, or do this well enough otherwise don't do it at all.
2. adobe.extend / adobe.classes? shouldn't be apache?
Well, it shouldn't be "adobe", but I'm not sure what we should change it to.
If apache sounds too general maybe just flex? Keep in mind that
apache.flex.classes will destroy performance a bit, yeap that's what JS
is about, shallow water ;)
Dan