5 posts tagged “flex”
Have been coding in Flex for about 2 years now. It is not a perfect tool but would say one of the best to deliver browser based rich UIs - no browser quirks to deal with and very productive. The real killer is the size of the application download, can run into MBs if all the source is compiled into one big application. Modules are good to break up into smaller chunks. But still the base application still comes to 300K with just the framework code. And then there is the issue of Singleton classes not really singletons across modules. So we end up including all such classes into the main application. Compiling with RSLs has got even the initial application size from 300K to about 100K, pretty the size of a mid-size module. So that's another option to work with.
Adobe has launched hosted software toolkit (can't think of a better name) to build collaborative applications. You can check it out here at http://labs.adobe.com/technologies/afcs/. Some interesting features which are business agnostic -
An interesting trend in software development - it is becoming similar to the hardware assembly line - like the way we order a Dell computer. It will be interesting to see how easy and seamless integrating the above stuff into an application will be. Add other services from acrobat.com and it is a decent business toolset.
Continuing on the previous post of comparing the onelineweb framework to Blazeds and Graniteds here is the summary of why an internal framework is developed.
1 - Scalability : It was impossible to introduce the plug-in architecture without creating/changing the class loading of graniteds and ibatis. The end result would have been a large monolithic package instead of smaller modules.
2 - Multi client support : Browser, Windows Mobile, Blackberry, Mashup API(XML API) and distribution (Ex. RSS feeds, Outlook).
3- Multi server support : Client interfacing with multiple server components directly - search engine, content engine, application all in unified fashion. The xml way.. Spitting out xml directly from search engine or content engine instead of proxing via the flex server side component.4 - Performance : Fast response time moving out all intermediate data exchange layers and natively compressing the data from database layer (right out of the resultset object) to gain speed at network layer using apache native compressors and browser native decompressors.
5 - Lightweight : Less dependencies on 3rd party libraries.
Let the problem define the framework rather than the
framework defining the solution. Simpler is Better.
Is Flex yet another MVC framework like Struts and 100 other java based frameworks? One such framework thinks so and has built complete set of support for actions and controllers for Flex - Gausax at http://www.guasax.com. Force fitting RIA frameworks especially Flex into an MVC misses the whole point and reduces it to UI eye candy.
Ajax world is slowly but steadily picking up in rich controls and effects so it is fast closing the gap with Flash on rich animations. Flex on it's side is solving the problems of a 300K initial download, browser friendly features like forward & back buttons, boomarks so it can compete with Ajax better.
Flex is really good at alleviating server load and thus provides better scalability and failover than a regular MVC framework. In theory most web frameworks support building stateless applications (like Google) but that is not the norm. The server continues to drive the client thus limiting its own scalability. Flex provides a way to push the entire responsibility of UI to the browser so the server becomes a service processing business transactions. It takes no part in the UI handling thus removing the need for an http session. That removes the browser to server affinity and makes servers a lot more scalable. Give a bunch of failover/clustered server urls to the client and client can take care of failover as well load balancing without a single point of failure on the server.
To summarize Flex when used in a stateless architecture will realize good gains on the server not to mention eyecandy for the user.
Recently we found a wired problem reported by a potential customer - Our flex solution doesn't work in her Vista Laptop. The retail solution - Resenet from Drapsa technologies is a SAAS solution with Flex as frontend. Our initial guess was the flex plug-ins are not there. But we were wrong. Next guess, the browser security is high.. Oops... it was also a wrong guess. For a quick curiosity, I asked her to try YouTube in her Laptop. It doesn't work.
The final problem we traced - The VISTA OS is a pirated one.