In the last few weeks, quite a few RIA framework announcements and/or rebrandings were announced:
- Apollo from Adobe, which is a runtime to be able to enable richer RIA applications on your desktop.
- Silverlight from Microsoft, which is a browser plugin to provide a richer RIA browser experience.
- JavaFX from Sun, which is also a a runtime to enable richer RIA applications on your desktop.
These three frameworks are all in some way also related to Flash/Flex from Adobe.
In this article, I'll be making a first stab at comparing these four frameworks. It should help you to get some perspective and initial understanding on the differences and the similarities.
To make the comparison easier, I've created a table that lists different aspects of the frameworks I found interesting to have detailed out, and for each of those aspects, how the four frameworks fit in.
Sample Apollo apps: Apollohunter
Open source JavaFX wiki: wiki
- Are users willing to wait for 4-6 MB downloads?
- Are we now again moving away from making the browser the platform? Notice that Mozilla is extending the browser even more via XUL to become one RIA platform. See here for some more info on that.
Finally, here are a few other interesting developments in this area:
- The Mono project is going to try to port Silverlight to Linux.
- MS just announced a new Silverlight app Popfly that allows users to create mashups (like Y! Pipes).
- A lightweight JRE for Java 6 is indeed not a rumor and thus the amount of runtime to download is significantly reduced.
- Rich Media Platform Comparison: : a table showing the comparison between Silverlight, .Net and Flash/Flex.
- Silverlight vs. Flash: The Developer Story: A lower level comparison of the two, with Silverlight being the winner for the author.
- JavaFX in perspective: some good points about JavaFX relative to Silverlight and Flash/Flex.
Update 02 June 2007:
- This week of course Google Gears came out. Here's shortly how it relates to Apollo and Dojo offline. Google is working with Adobe to get it integrated with Apollo. Together with Adobe and Mozilla it is also trying to make Gears an industry standard. Note that you can use each of the 3 components also seperately, you don't need to only use it for writing synchronzation software.
- Here's another overview of these three and how they relate: Apollo, Silverlight, Gears.
- Here's a good landscape overview of RIA tools and why Flex could be a good way of building user interfaces, even to Java developers.