views:

233

answers:

1

Hi all,

My company is building a Flex application that we may need to port to other platforms:

  • Silverlight (likely)
  • Mobile (maybe -- iPhone: Objective-C , Android: Java, etc.)
  • Desktop (maybe -- AIR, .NET, etc.)
  • TV sets (maybe eventually)

Currently, I’m looking into application frameworks to build upon and I’m torn between pureMVC and Swiz.

I LOVE swiz for its simplicity and how it just gives you a way to hook things up and then apply your own patterns. From a flex-only perspective, this is my 1st choice.

But, PureMVC is platform-independent and has already been ported over to most of the platforms that are mentioned above. How valuable is this portability? Will it really make our lives significantly easier when it comes to porting and developing/maintaining multiple applications? If so, then it seems like PureMVC is the way to go.

Alternatively, since Silverlight has the most definite business case for porting of our application, maybe we could port Swiz to Silverlight? I'm not too familiar with which AS3 language and Flex framework features Swiz depends on and whether they are available in C#/Silvelright. Would this actually be possible?

Thanks so much!

Karthik

+3  A: 

The way I see it, if you used pureMVC you could port to a new language, without too much trouble (other than what the new language will give you) your commands, mediators and proxies, provided you program your mediators to an interface, instead of a concrete component implementation, and the proxies use a services layer to get the data from server. That way you'll only have to implement the components and the service layer in the new language.

A quick look at the Swiz framework:

  • uses the flash event model (see CentralDispatcher)
  • uses some flash.net, and mx.rpc classes (see net and rpc swiz packages)

PureMVC framework doesn't use the flash event model, and eventual flash.net/mx.rpc references would normally appear in the service layer. On the other hand Swiz seems to be aimed at taking full advantage of flex, and the mxml format, so it might get the job done faster there. So you might also want to consider using Swiz for flex and PureMVC for the other languages.

bug-a-lot
Thanks -- I am going with Swiz, couldn't find enough evidence of portability benefits to switch. Also, am fairly confident that Swiz would be an easy port to Silverlight.
Karthik
Forgot to mention that, in lack of good evidence, the best course of action would be to make a small test application using pureMVC and one using Swiz with 1 or 2 server calls (login + get a list of something), and port them both to Silverlight.
bug-a-lot