A Flash Developer Resource Site

Page 1 of 8 12345 ... LastLast
Results 1 to 20 of 141

Thread: The charges agaisnt AS3

  1. #1
    Custom User Title Incrue's Avatar
    Join Date
    Feb 2004
    Posts
    973

    The charges agaisnt AS3

    http://www.insideria.com/2008/07/the...ctionscri.html

    This is a Colin Moock article that someone post in the as3 forum and i though it would be interesting to discuss it here
    We have talked about many of those things but the news is, seems that adobe is working on making some things in as3 as easy as they were in as2, like stuff to handle the removal of clips completely
    Funny that Colin sems to thinks as me, just because you can do all in oop doesnt mean you should to.

  2. #2
    Student
    Join Date
    Apr 2001
    Location
    -
    Posts
    4,756
    well there was big furstration to all those who are more visual orientated - and have not a coding background (like me).
    I felt and do still think that the cs3 release is a shidty release

    and I fully agree with his list:
    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.
    and it is not the language who is at fault,- but the bad release of CS3 which makes it almost impossible to get into as3 but also a pain in the ass to code with.
    I hope the next CS4 release will finally do justice to scripting back in the IDE,- because as of now I do all my coding in FlashDevelop even though I´d like to do it more in the IDE.

  3. #3
    Yes we can tomsamson's Avatar
    Join Date
    Sep 2001
    Location
    Team Titan Secret Lair
    Posts
    4,666
    Excellent post by Colin, i hope Adobe finally starts to listen now that more and more people raise their voice.
    That said the one function to remove content which they add with the new flash player (and which only works in few cases) is way too little, way more has to be done to fix things.

  4. #4
    Senior Member Boombanguk's Avatar
    Join Date
    Jun 2000
    Posts
    1,194
    I havn't been on this forum for a while, but it's good to see people are making the case regarding problems with AS3. I took a look at AS3 2 (?) years ago, and within 5 minutes realised it was a 100 times harder to set things up with it then it was with AS2, but at the time everyone was saying "oh that's cos it's a REAL programming language"...yeah whatever....all I know is that AS3 makes you work real hard to do real simple things, at least things that take seconds in AS2 to sort out, and I don't call that progression.
    FlashGameMaker.com - er..where I say stuff.

  5. #5
    Will moderate for beer
    Join Date
    Apr 2007
    Location
    Austin, TX
    Posts
    6,801
    I know I'm not the intended audience, but here's my thoughts

    1.) The removal of on()/onClipEvent() from Flash CS3 makes creating simple interactivity hard.
    Ridiculous. The syntax has changed, but it's not like the new way is harder or makes less sense. It makes MORE sense, and it's more flexible.

    2.) Getting rid of loaded .swf files is hard.
    Maybe. I don't see what's so hard about removing references, but if an "automagic" solution actually worked I wouldn't object.

    3.) Casting DisplayObject.parent makes controlling parent movie clips hard.
    Good. Child objects shouldn't be directly controlling parents anyway.

    4.) The removal of getURL() makes linking hard.
    Laughable.

    5.) The removal of loadMovie() makes loading .swf files and images hard.
    New way is better. More intuitive, and more flexible.

    6.) ActionScript 3.0's additional errors make coding cumbersome.
    Completely false. I realize that the article came to the same conclusion.

    7.) Referring to library symbols dynamically is unintuitive.
    No, not really. Proper datastructers for collections are a much better solution than magic methods which interpret built up Strings.

    8.) Adding custom functionality to manually created text fields, to all movie clips, or to all buttons is cumbersome.
    Through the IDE, yes. This is not AS3's fault. Extending classes to achieve this is dead simple.

    9.) The removal of duplicateMovieClip() makes cloning a MovieClip instance (really) hard.
    Hard, but not really hard. I wouldn't object to having a DisplayObject.clone method if it was fully type aware.

  6. #6
    Student
    Join Date
    Apr 2001
    Location
    -
    Posts
    4,756
    @5TonsOfFlax: yes you rather sound like a programmer but as someone who got introduced with AS as scripting language rather than a programming language AS3 wasn´t that welcomming to that many designers.

    Actionscript once was something where one could quick and dirty script and rapidly get results with the combination of scripts and visuals. CS3 doesn´t offer that the way most were used to- instead often it takes literally dozen lines of code to archive something that was done before with just a line.

    Dont get me wrong on my programming side I do indeed welcome many of the AS3 stuff- but it was just ridiculous hard to get into it- not something I was used to before with flash- and still at times I am not even motived trying out stuff in AS3 because I need to code so detailed and lots of basements in order to let it run at all.

    All in all I would say that the CS3 IDE is useless for programming at all- and a failure for the visual orientated scripter (working with stage graphics and code).

  7. #7
    Will moderate for beer
    Join Date
    Apr 2007
    Location
    Austin, TX
    Posts
    6,801
    Yeah, I get the frustration. I can't do anything except the most rudimentary tasks with Flash itself. I find the IDE completely unintuitive and it's almost like it was intentionally designed to frustrate programmers. So I can sympathize with the feeling of "why on earth doesn't this work the way I expect it to?". But in this case, the AS3 way is objectively better for all the metrics that matter to me.

    I must say I'm honestly surprised that you found AS3 hard to get into. You're one of the people on this forum whose programming ability I have the highest respect for.

  8. #8
    Yes we can tomsamson's Avatar
    Join Date
    Sep 2001
    Location
    Team Titan Secret Lair
    Posts
    4,666
    Quote Originally Posted by 5TonsOfFlax
    I must say I'm honestly surprised that you found AS3 hard to get into. You're one of the people on this forum whose programming ability I have the highest respect for.
    i find it sadening to almost again funny getting degree that each time someone says something negative about AS3 or other aspects of the flash platform "evolution" others who like those things seem to automatically think: "Ok, this surely comes from a script kiddy who can´t get anything done in code".

  9. #9
    Student
    Join Date
    Apr 2001
    Location
    -
    Posts
    4,756
    maybe I was to ambitous as my first AS3 stuff was this (first ever as3) and it felt like forever programming and learning every little detail- even more as I was forced to do everything in the freaky flex environment (neither Flash or Flex really welcomed AS3 back then)- no stage no movieClips pure hell at first. And I always thought that if just the syntax wasn´t that bloated (event triggers for buttons, data/event types,...) I´d be so much faster.

    If I´d have done the same in AS1/2 (in Flash 8) it would cost me perhaps a few days but with AS3 it took me weeks as i was reading up every function I needed and finding out that I had to write it in 40% mode lines of code.

    it was not such a nice first confrontation and that´s why I say it was pain in the ass to get into it. I miss the days when I could create in just 15 minutes a working and useable prototype in Flash- with AS3, the useless IDE and the pile of errors I got at first this is not the first choise atm. for prototypes.


    AS3 is usefull for performance intense stuff like 3d, bitmap manipulation, binary, physics and the alike - but for quick stuff for now I´d rather go back to as1/2 - and that´s mainly because I can better work with Actionscript 1/2 and the IDE together - as my roots are still the one of a designer even though I get into more and more into scripting stuff.

  10. #10
    Will moderate for beer
    Join Date
    Apr 2007
    Location
    Austin, TX
    Posts
    6,801
    Well, there are a LOT of script kiddies who can't wrap their heads around code. But mostly I think it's just that people expect other people to be more or less like themselves. If someone has trouble with something that seems easy and natural, the natural assumption is that they're either inexperienced at it, or incapable of "getting" it.

    In truth, I recognize that there are simply different skillsets, and people are attracted to one or the other. It's the schizophrenic nature of flash's current state that is throwing the math nerds in with the art nerds in one classroom.

  11. #11
    Student
    Join Date
    Apr 2001
    Location
    -
    Posts
    4,756
    It's the schizophrenic nature of flash's current state that is throwing the math nerds in with the art nerds in one classroom
    something like that yes ^^
    which reminds me in the past there were more resources for flash regarding how to animate and draw,- now (the newer stuff) its more focused on scripting with AS3 that´s at least my impression.

  12. #12
    M.D. mr_malee's Avatar
    Join Date
    Dec 2002
    Location
    Shelter
    Posts
    4,139
    I have lost a lot of respect for Colin now, that post is crap.

    NO ONE IS FORCING YOU TO USE AS3!

    if you want crappy event model and simple functions then use AS2. I don't want Adobe dumbing down AS3 and sacrificing speed for people that "just don't get it". I mean seriously, complaining about getURL, it takes 2 mins to create your own getURL class.
    Code:
    package com.malee.net {
    	
    	import flash.net.navigateToURL;
    	import flash.net.URLRequest;
    
    	public function getURL(url:String, window:String = null):void {
    		
    		navigateToURL(new URLRequest(url), window);
    	}
    }
    
    import com.malee.next.getURL;
    
    getURL("http://www.AS3rulesAndAs2Sucks.com");
    I've been developing in C# for the past week and realize how good it is to have a proper OOP language. AS4 couldn't come any faster for me.
    lather yourself up with soap - soap arcade

  13. #13
    Senior Member chriserrorplain's Avatar
    Join Date
    Aug 2002
    Location
    london village
    Posts
    623
    I am the messiest coder out there...really. I never use any proper OOP methods (the only thing I do neat and tidy is always use external include files with everything in functions, but they are all spaghetti coded together). My eyes have a tendency to glaze over when I start reading articles on hardcore code and my maths is awful. Yet I personalyl Love AS3 compared to 1 / 2.0, since I made the jump over I get so annoyed now when I have to not use it.

    I really don't get how AS3 has seemingly changed everyone's workflows so much, my project files look exactly the same (with some 'addChild's instead of 'attachMovie's and a 'eventlisteneres' instead of 'onEnterFrames'). Are some of you saying "AS3" to mean "fully object orientated AS3 and possibly developed in Eclipse / FD"?

    Anyways back to my game I must finish tonight; which is full of AS3 code all over the timelines of animations and all sorts of other things I have been doing since flash5

    ChrisError x
    Last edited by chriserrorplain; 08-10-2008 at 08:31 PM.

  14. #14
    Yes we can tomsamson's Avatar
    Join Date
    Sep 2001
    Location
    Team Titan Secret Lair
    Posts
    4,666
    From my experience most of the people who see no mistakes made at all in the transition from one language/player/ide version to another are usually people coming from other oop based languages like java who earlier felt like flash was awkward and unintuitive to use as it was before. Cause it was not what they knew from their previous experience in other fields.
    On the other side people more coming from the design sector or learning flash and with its language coding showd the world what rapid prototyping really means. Many years have passed and meanwhile all major middleware engines have support for high level scripting and prototyping features. At the same time newer languages are overall going more and more higher level, allow more functionality with less code and less managment work on content creator side.
    While many additions and changes in the Actionscript language and player setup were for the better, many also made it loose a lot of its rapid prototyping capabilities (again, can only be understood by people who were used to kick out stuff rapidly with the flash way in the past).
    Few clients actually understand why some things take way longer to create than in older flash versions now.
    I´m a bit of both worlds, coder and designer, i was one of those for whom flash and AS was one of the first steps into creating interactive content, later i then had a programming education so i also know about when oop approaches are an overall better fit.
    But then this what Render said is the main point to me:
    "AS3 is usefull for performance intense stuff like 3d, bitmap manipulation, binary, physics and the alike.."

    I totally agree but then to me its like: hey, if i have to do things compeltely like in a Java/C# type workflow, why shouldn´t i use those and end up with way better coding tools and way more performance and other features at hand?
    Heck, i can use XNA and unity and do things that are impossible in flash even if one combined all the good sides of all flash 3d apis together and coded some more years on em.
    Flash just doesn´t have the performance and lacks many other things lower level and more complex languages/technologies have, so it shouldn´t try to get to them purely on the language similarity/complexity side.
    Flash to me always had the advantage one could create things more intuitively and in shorter timespans than in other technologies/languages. I feel like its more and more loosing such sides, to me its gettting more and more like a wannabe java clone, i see few reasons to use it like that.
    I also don´t think Adobe´s solution of bringing out more and more tools and that way splitting up the users and the cooperation abilities more and more is a good solution.

  15. #15
    Yes we can tomsamson's Avatar
    Join Date
    Sep 2001
    Location
    Team Titan Secret Lair
    Posts
    4,666
    Quote Originally Posted by mr_malee
    I have lost a lot of respect for Colin now, that post is crap.

    NO ONE IS FORCING YOU TO USE AS3!
    oh, come on man, that is the lamest "argument" of em all.
    Many features are only available with AS3/F9 export and with the way Adobe does things it will not change to the other direction. If everything was available in AS1/2 export then less people would moan. Also even then if the majority of flash users are unhappy with something then they can raise their voice, sure they could also just give up after a while and instead go to something else.
    Also i think, and Colin pointed that out,too there´s a misconception,when people ***** about the evolution of flash its not just AS3 or AS3 meant in particular, its often many other things that changed at the same time, like introducing a seperate coding app instead of developing the one in the flash ide further propperly, changing the way the garbage collector and other parts of the player work etc etc.

    Quote Originally Posted by mr_malee
    it takes 2 mins to create your own getURL class.
    Code:
    package com.malee.net {
    	
    	import flash.net.navigateToURL;
    	import flash.net.URLRequest;
    
    	public function getURL(url:String, window:String = null):void {
    		
    		navigateToURL(new URLRequest(url), window);
    	}
    }
    
    import com.malee.next.getURL;
    
    getURL("http://www.AS3rulesAndAs2Sucks.com");

    this is funny, very good example. For the point that: yes, sure, everyone can code a class there to get ease of workflow functionality here, then there, then work on a big framework of many such classes. Hey, why am i using flash again? It should come with ease of use and quick creation time workflow and classes out of the box.

    Quote Originally Posted by mr_malee
    I've been developing in C# for the past week and realize how good it is to have a proper OOP language. AS4 couldn't come any faster for me.
    Ok, so why are you using flash now?

  16. #16
    Student
    Join Date
    Apr 2001
    Location
    -
    Posts
    4,756
    @tomsamson: the only reason why I still stick with flash is because it has a thicker connection with design tools. If it were like Java, XNA and alike I wouldn´t care at all- coding is not my orgin. The whole script stuff is extremely boring to me if it isn´t connected somehow with visual tools.

    Lately I enjoy alot maxscript (the scripting language in 3dsmax) because it helps me creating visual stuff quicker, more effecient and in a way others haven´t before. Its dirty scripting and and the code is ok for me as long as it does what I want (even though I improve and the code gets better and better).
    With each AS3 project however I have to take deep breath because I know it wont be a quick and smal project - nothing quick and dirty.

  17. #17
    M.D. mr_malee's Avatar
    Join Date
    Dec 2002
    Location
    Shelter
    Posts
    4,139
    I'm developing in both languages now as that's what is required.

    What I want to know is why people constantly have to have everything made "easy" for them. You get a function:

    bob.removeBobForever()

    what does it do behind the scenes? You will most likely never find out. Isn't it better to be able to understand what you are doing? even if its just 3 more lines of code. Developers are getting lazier and lazier.

    and most of the new features in AS3 are language features, the stuff people are complaining about.
    Run-time exceptions

    Run-time types

    Sealed classes

    Method closures

    ECMAScript for XML (E4X)

    Regular expressions

    Namespaces

    New primitive types

    DOM3 event model

    Display list API

    Handling dynamic data and content

    Low-level data access

    Working with text
    So what exactly is it that makes everyone want AS3 (apart from speed execution), if you want that, then don't complain about the changes.
    lather yourself up with soap - soap arcade

  18. #18
    Yes we can tomsamson's Avatar
    Join Date
    Sep 2001
    Location
    Team Titan Secret Lair
    Posts
    4,666
    to render: yup, i totally see it like you and to me its like this now: if i have a bigger game in mind that is fine to do mostly codeside only and requires hiigh performance or hey, i´d intend to bring it to 360 i´d go for XNA/C#.
    If i want to target several platforms and need high performance and also the comfort to create visual things in visual creation way where appropriate and at the same time have a flexible coding environment i go with unity3d.
    If i want 2d content fine for the web that doesn´t have to achieve wicked performance or use nice 3d capabilities and i have a smaller budget or shorter development time, in those cases flash is fine (then in AS1/2 creation way).
    So yeah, that´s why i see very few cases where it would make sense to use flash and code in AS3, so that´s why i wondered and asked

  19. #19
    Yes we can tomsamson's Avatar
    Join Date
    Sep 2001
    Location
    Team Titan Secret Lair
    Posts
    4,666
    to Malee: Maybe you feel like its laziness, but to me its not about laziness, its about getting more done in more enjoyable way in less time.
    Since i´m an indy usually running on shorter timeframes/budgets per project it makes a huge difference if i can work 3 months on a basic flash 2D game with rudimentary physics and/or 3D and/or a few bjects moving around (rudimentary compared to what´s possible in other technologies) or i can create something way more impressive in way less time with a more enjoyable workflow.
    If that´s laziness in your eyes then fine, i´m glad to be lazy in your eyes
    When one codes in AS3 flash can´t technologically come any close in performance or features to other technologies with similar time intensive workflow, so there´s no use to me for using the workflow introduced in newer flash platform versions.
    I worked on several AS3 projects and each took considerably longer than a similar project would have taken with AS1/2. Who pays for this, why use flash for this? With AS1/2 many things weren´t nice, but with AS3 many things that were nice about flash in first place got very unconvenient to use or are not usable at all anymore.
    I wonder each day about people working on papervision 3d projects. Why don´t these people take one hour to check out other technologies and see what they could do with similar code there?
    I´d like to get what people appreciate in flash when those things making flash stand out are lost and it becomes a java clone and the workflow is like developing a Java or C# app more and more,too, but its difficult for me to see.
    Last edited by tomsamson; 08-10-2008 at 09:15 PM.

  20. #20
    M.D. mr_malee's Avatar
    Join Date
    Dec 2002
    Location
    Shelter
    Posts
    4,139
    sure, its hard at the beginning, but as you grow and advance through development you start to build up a library. Most of the features missing "or changed" in AS3 can be replicated using your own custom classes. And when you do so, you learn more about what is going on.

    In saying all this, if Adobe can keep towards OOP standards whilst still keeping speed execution the same and provide support for these "easy" methods then I don't have a problem. I have a problem when the performance of the player is sacrificed so someone can rest easy that all their dirty references placed all over the place can be cleaned up using 1 line of code. That's what gets me frustrated.
    lather yourself up with soap - soap arcade

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  




Click Here to Expand Forum to Full Width

HTML5 Development Center