This content has been marked as final. Show 5 replies
Here's my 2 cents based on your questions:
Typically a flex app is a single download so so once downloaded moving from page to page is very fast. Don't think like a web app where you do a trip to the server for every page. Flex also supports modules so you can control what is loaded more precisely.
I'm not a command line type guy so I thing the ide is worth the money. I use visual design mode alot when first laying out my applications. Also the features built into eclipse (like code hinting etc) are really key for me. It boils down to a personal choice and development style. I've certainly met lots of developers who are happy to code in Notepad, so if you're one of those then may be the ide is not worth the $. I don't know if Adobe plans a Linux version but they do support windows and mac.
3) Web Services
We use webservices alot and don't think they suck. Our interfaces are all xml based and we are quite happy with how it works. If you want to go with remoting because of the binary protocol then you're kind of stuck with fds or one of the open source alternatives. We've found that because the trips to the server are only for data the more verbose web services calls do not impose a performance issue.
Let me add:
Flex is for serious development and not to play around. There are lots of examples of serious apps emerging built in Flex.
Thanks for your comments. I am a newbie as you must have figured out so some questions can be really dumb.
So I will/should have only one SWF file for my entire app? Won't it mean that the app will be "loading" for a long time?
3) Web Services
Didn't you have to dumb down your object model to get it to work with Web Services? I know there is the "DTO" or "valueObject" pattern but there is lot of code-duplication and I have to dumb down even my Service methods. Don't you use hibernate, Java generics? I am very interested in how you got it to work.
Regarding #1: Alot of people see "hello world" as a 200k app, and figure twice the text would be 400k - it doesn't work that way. No matter how large or small your application, a certain overhead is incurred.
I would advise one SWF per application, but that would depend on your particular situation, business rules, etc.
There is good documentation on the Adobe site, and on the blogosphere for speeding up apps - it comes down to good coding practices (just like in any language).
Also, you can stagger the items that are loaded, and when they are loaded - all at once, or when needed. Because Flex is asynchronous (unlike the traditional html web based apps we have right now), you can load some design items and get the users attention, while other items are loading in the background.
I don't know about dumbing down web services - depepnding on whicha language you serve them in, they can be quite complex (I use ColdFusion). They are public, though, and that may not be what you want. You can look at the other manners of communication such as HTTP headers (get, post, etc, look up REST - it's turning out to be quite popular these days). You can call Java objects, or, if you are a ColdFusion shop, get a direct link, if you are running version 7.0.2+
Hope that helped some.
I am new to Flex but I am designing a pretty big app that loads really quick as of right now, even if I add a lot more it will still load relatively fast so speed shouldn't be a big concern in my mind. As far as IDEs go FlexBuilder is really easy to understand and use which makes it worth the cost if you can afford it. Good luck.