Should I use Flex or Silverlight? Let’s decide together…
thSo obviously as soon as I ruled out Silverlight and decided to stick with Flex, Silverlight 2 was released, and I now have to go back and re-evaluate its usefulness. I still maintain that I have limited my decisions to RIA. In other words I have to decide between Flex and Silverlight. So, I will do a full comparison of the two.
First, let me "define my terms", as the history majors say. There are a few things that I will aim for, and a few that I will explicitly not aim for.
- Easy for the end user, for example
- A large install base OR a very simple install
- A familiar UI
- Should work on every browser, without too much work
- Easy to code for me
- in particular, the UI should be easy to code, since I hate writing UI code
- a familiar language would help. I know several
- a nice and clean IDE would be nice. I have grown accustom to programming in real environments
- Existing frameworks for key elements
- I will need a mapping API
- I will need a slider (really a Dual Slider) already written. I wrote one of those and it wasn’t fun
- I will need a way to make HTTP requests asynchronously
- Easy to test for me
- debugging is the most important: I need to be able to do basic things like tracing and maybe breakpoints (though that is not absolutely essential)
- compatibility testing: there are tons of browsers, and I don’t want to have to test in more than, say, 1
So I will step through that list and compare the two, one by one.
| Goal | Flex | Silverlight |
| Ease of Installation | Yes: Everyone has youtube | Yeah I guess: kind of a pain |
| Familiarity of UI | Yes: youtube | Yes: controls are WMF |
| Browser compat | Yes: all | Yes: all |
| Familiar Languages | Not really: mxml | Yes: JavaScript and XAML |
| Easy and free IDE | Not really: Expensive | Yes: Visual Studio Web |
| UI Framework | Yes | Yes |
| Mapping API | Yes:Google Maps for Flex | Not really! Uh oh… |
| Dual Slider | Yes: I found one | Yes: I found one somewhere else |
| HTTP requests | Yes: built in | Yes: built in |
| Basic Debugging for free | Not really | Yes: In Visual Studio |
In the course of doing my research, I found out a few features that I had not originally considered, so I add those to my considerations.
App Storage:
Silverlight offers application storage, which the user has to approve. I could use this to make loading and unloading maps much easier, and I could use it have users create their own historical content. And I’m sure I could find other users too.
I found and read this fantastic comparison early on but didn’t want to cloud your judgment. You should read it though. He concludes that Flash should be used, but none of his reasons overlap my reasons. He cites the low cost of Flash as a plus:
For under $1000.00, Adobe sells the full web development CS3 kit, which will give you all the tools you need to develop a dynamic website with scripting, AJAX, and Flash.
By budget is about $1,000, give or take $1,000, so I don’t think I will be spending it on the fancy Flash IDEs that he suggests.
That only leaves one thing: Mapping
I had trouble finding a mapping API for SilverLight, but will keep looking for a few days before I make any more decisions.
No comments yet. Be the first.
Leave a reply