Similar question: Best Resources for Learning AS3
I am interested in learning AS3 and have downloaded FlashDevelop and played around with it a bit, learning some of the fundamentals. However, when I attempt to start on any relatively simple project (eg. a multipage document) I get completely lost and have no idea how I should build my project. Are there any resources, tutorials, 'cookbooks' etc. that teach actionscript 3 through example projects. I keep finding books that explain the fundamentals of the actionscript syntax or tutorials that explain how to use actionscript to complete a task in the Flash IDE but this is not what I am after.
Where can I learn how to create projects in pure AS3 without the aid of the Flash IDE or Flex? I don't mind if I have to create assets in the Flash IDE that I then compile to .swf or .swc for use in my actionscript code.
My advice is: learn Flex focusing strongly on MXML, or learn Haxe.
AS3 is verbous, unexpressive and unproductive compared to those two.
edit: you can check out the AS3 cookbook. nonetheless, after rereading your post, I've come to understand, that your problem is not learning AS3, but you're rather having design problems. Am I correct?
edit2: "Is it uncommon for people to work in pure AS3?"
I wouldn't say, it's uncommon. I'd say it's even common, i.e. a common mistake. Why? It's inefficient. I think, I can tell, because I did that a lot.
the main role of pure AS3 is to create libraries and frameworks. To create actual apps, it is really the hardest way one can choose. In all handmade apps, GUI turns out to be the most time consuming part. Laying out GUI using code is a nightmare.
Now MXML is really great for normal GUIs (a graphical editor is even better of course). And the Flash IDE is great for creating funky animated things. The best thing you can do with AS3 is take ASWing and their GUI-editor. As nice as ASWing is, its ugly and a pain in the arse to skin. But, you can.
The advantage of Haxe is, that its a more powerful language than AS3. You effectively write less code, and its signifficantly more typesafe, so you run into less errors and spend less time debugging. Also, another advantage is, that you can use the same language for creating a serverside backend for the app and pass objects transparently to it, using Haxe remoting, which cuts the transport layer down to nothing. All validation and business logic can run both on client or server. Plus it's open source and it evolves very fast. AS3 was a great thing when it came, but it has stalled eversince, which is nearly 4 years now.
So while there's nothing wrong using pure AS3 per se, you always have to compare it to the alternatives. Pure AS3 is inefficient and for geeks. Flex is highly efficient. Haxe is more efficient than AS3, and is for the really cool geeks.
Have you checked out Essential ActionScript 3.0 by Colin Moock that was in the other question? here is a preview on google books
Related
I am learning ActionScript and am brand new to making Flash movie clips. Overall it seems pretty easy but I have discovered that there is a huge difference between AS2 and AS3, and that components built in one will not run with code written in the other.
This makes for some big obstacles for me, I have a reason to develop in AS2 but everything on the net is geared around AS3, even the latest versions of Flash Professional are full of components and examples in AS3. (I am using CS5 right now). I tried to use the components from the library and they do not work when building an AS2 project, the compiler errors all complain about "The class or interface 'xxx' could not be loaded" where xxx is referring to some part of the component object from the library.
Any advice here would be much appreciated. I am sure experienced developers have had issues when trying to 'bridge the gap' between old code and new code, if there is a web resource or some sort of advice then that would help.
Well, AS3 was introduced 9 Years ago! AS2 is deprecated and you really should write any code in AS3 for serveral reasons. The mysterious AS2 class that you need, may exist in AS3 or can be somehow adapted to AS3, if you tell us more about it maybe you get a proper solution.
I like actionscript very much and did a project with Apache Flex 4.12. Originally my mobile application was built in mxml and the performance was awful. Then I rewrite the application with single line mxml file and the rest of the project in pure as3, the performance is much better.
Now I have another project, it is an multi-platform informational application with some e-commerce capabilities target on both desktop and mobile platform and need to decide, on performance/flexibility/scalability wise, should I stick with Flex (mxml) / Flex (pure as3) / or Pure AS3 with Starling+FeathersUI+as3-signal?
I was thinking to shift into the Starling approach, however I see improvements from the Flex 4.14 release, anyone can give me a direction that which approach is more promising in long term?
Sorry for my bad English as I am not a native user. Thanks.
Please look into Haxe (www.haxe.org) and OpenFL (www.openfl.org) as an alternative to Starling.
Haxe is a programming language that is very similar to action script 3.
OpenFL - open flash library is a framework for Haxe programming language.
The benefit: of Haxe + OpenFL are:
Astounding performance
Fast and easy development
Non-existing learning curve for AS3 programmer ( you might need to spend 10 min learning about loops and casting though )
99% same API as the Flash API
I don't recommend Starling because: it's still AIR and you won't want it, the performance is below average, you'll need to re-write your whole code-base for Starling, you won't be able to port your game outside of Starling without rewriting it again and the fact that you won't be able to compile to many different platforms other than the currently supported ones.
This is my first post on Stack Overflow.
Are there any IDE's for ActionScript 3 which can provide the following:
-Graphical Interface for drawing
-Writing code with good debugging, dynamic feedback, refactoring etc
I have recently rekindled programming flash games in ActionScript 3 and am using Flash CS3
as it provides means of drawing my graphical objects and writing the code.
I have noticed that:
1. Debugging is not particualr great
2. No dynamic feedback whilst programming (suggestion or auto populate)
3. No refactoring etc
I have looked into other IDEs such as Flex Builder and even looked at plugins for my favorite
IDE's such as Eclipse and IntilliJ but have not found my answer. They tend to talk heavuly about
how they provide good coding tools but not much, if any, tools on the graphical side of things.
It would also be ideal for me if what ever IDE I use I am still able to migrate the entire project
so that it can still be opened usign CS3. Additionally, I am a Windows user.
At the moment I am contemplating drawing my sprites in CS3 and doing the code in another but
surely there must be an easier, perhaps more sensable approach?
Many thanks in advance for any help.
No, there is no IDE like that, and given the decreasing popularity of Flash it's unlikely that something like that will ever be developed.
The coding environment has improved quite a bit in newer versions of Flash Pro, but it still doesn't approach anything like Flash Builder or FlashDevelop. It's not uncommon for people to create graphics in Flash Pro and do coding in another editor.
This is easy. FlashDevelop for code. Flash IDE for graphics. You may want to graduate to CS5.5 or CS6 (if you can find a copy)if you want to go mobile. Otherwise CC.
I would like to know if you have ideas about the LIMITATION of AS2.0? I've done some research about the difference of AS2.0 and AS3.0 but I need to have a clear understanding about the limitation of AS2.0 in order for me to confirm that AS3.0 is superior than its predecessor before I continue my study in AS3.0. Thank you.
I used to develop games in ActionScript 2. I was very resistant to ActionScript 3 when it came out - I didn't even touch it until about 2 years after it was released.
When I finally did make the effort to learn it, I became frustrated with myself for not learning it sooner. It was so much cleaner and more powerful. I was able to create actual libraries for future projects as I worked, and download libraries for things that I didn't have the brain to develop myself, like physics.
It is extremely beneficial for you to learn ActionScript 3 - first off, lets look at what's happening with the two:
AS2 is being removed from future releases of Flash.
AS3 is still being worked on. A noteworthy example of this is the recently developed Stage3D API, which grants extremely efficient rendering for Flash.
Here are some core advantages of AS3 vs AS2:
It's object oriented. This is almost mandatory when working with large applications or games.
Because of this, there are hundreds of libraries available for AS3 that cover things like physics, particles, animation, MVC concepts, rendering improvements, etc.
Much nicer to use.
Easier to extend your knowledge once you get a grasp of the basics of object oriented programming.
It performs a lot better.
Easier to recycle code for future projects.
Learning ActionScript 3 will greatly improve your chances of being able to pick up additional popular languages like C#, Java, PHP and so on.
Much easier to find support - take a look at the quality of answers on Stack Overflow between AS2 and AS3.
You can create AIR applications, which can be built for iOS and Android devices.
The only reason you need to care about is that it's an obsolete language. Don't waste your time with AS2. There's a quantum leap from AS2 to AS3, not only in terms of what you can do, but in terms of the quality of the language itself.
As someone who made the transition in 2007 to AS3 (after using AS2 since 2000) here are the main advantages:
Speed. When it was released, AS3 was 10 times faster than AS2. Today considering all the new features Adobe is introducing like Native Extensions, it's a lot faster than that.
Publishing to mobile or dekstop apps. Face it: browser Flash is slowly dying.
New features such as Stage3d or StageVideo.
Learning AS3 will make you a better coder
AS2 is no longer supported in Flash Professional, so if Flash Pro is part of your design cycle or you ever want it to be, that's obviously a big limitation. (Adobe has said that the Flash Player will continue to support AS2, though, so if you don't use Flash Pro to develop you can still get by).
In terms of functions/behaviors that exist in AS3 but not AS2, Stage3D is one. I'll leave it to someone else to make a list, but basically, AS3 is the better (and definitely faster) choice for any situation I can think of.
I'm looking for a robust and efficient method of creating any kind of imaginable control to use with a LabVIEW project. I'm curious what you've tried and what the pros and cons are. I myself have never used LabVIEW, but have been approached to write controls for it based on my knowledge of other things (C#, HTML5, Flash, Silverlight, etc).
It appears to me as though this kind of thing has been or can be done in .NET, Flash, WebGL, Qt, Silverlight, and maybe some others as well. Ideally, we don't want to have to write any code twice, so platform flexibility is a great thing, which makes me lean toward a web solution. But ease of implementation is important as well, and I would think a web solution would require some extensive web services parsing and programming every time a control is going to be used. But I could be wrong. An eye on the future is also important. If something would be a great solution today, but probably worthless in 2 years, no point in bringing it up.
(Please realize that I am NOT simply asking how to change the colors of (customize) a LabVIEW control, nor am I interested in xControls as the final solution as apparently they aren't robust enough.)
Thanks in advance!
I am aware that this probably doesn't answer your question, but if you have access to LabVIEW, you could analyse the "Military" Theme Custom Control Suite, and look at examples on the UI Interest Group and LabVIEW UI Tips and Tricks. That's probably the best you could do with LabVIEW.
.NET is probably your best bet, LabVIEW supports .net controls, so you can define the UI and reuse your .net code.
I have heard rumours that the new LabVIEW version (2013 due in September) will use .NET 4 libraries as the default instead of the current 2, so you might want to keep that in mind.
I wouldn't ditch XControls that easily if I was your company (I can understand it's not your cup of tea).