2009-12-09 80 views
1

我公司正在建立一个Flex应用程序,我们可能需要移植到其他平台:Flex应用程序框架 - PureMVC可移植性与Swiz?

  • Silverlight的(可能)
  • 移动(也许 - iPhone:Objective-C中,Android的:Java等)
  • 桌面(也许 - AIR,.NET等)
  • 电视机(也许最终)

目前,我寻找到应用程序框架,建立在和我PureMVC的左右为难和S奇才。

我喜欢swiz,因为它的简单性以及它如何让你有一种方法来把事情搞定,然后应用你自己的模式。从灵活角度来看,这是我的第一选择。

但是,PureMVC是平台无关的,已经被移植到上面提到的大多数平台上。 这种便携性有多宝贵?当涉及到移植和开发/维护多个应用程序时,它真的会让我们的生活更加轻松吗?如果是这样,那么看起来PureMVC就是要走的路。

另外,由于Silverlight有最明确的移植我们的应用程序的商业案例,也许我们可以端口Swiz到Silverlight?我不太熟悉Swiz依赖哪种AS3语言和Flex框架功能,以及它们是否在C#/ Silvelright中可用。 这实际上是可能的吗?

非常感谢!

KARTHIK

回答

3

我看到它,如果你使用了PureMVC你可以移植到一个新的语言,没有太多的麻烦(不是什么新的语言会给你其他)你的命令,调解员和代理,所提供的方法您将您的中介器编程为接口,而不是具体的组件实现,并且代理使用服务层从服务器获取数据。这样你就只需要用新语言实现组件和服务层。

快速浏览一下Swiz框架:

  • 使用闪光灯事件模型(见CentralDispatcher)
  • 使用一些flash.net和mx.rpc类(见网和RPC Swiz会包)

PureMVC框架不使用Flash事件模型,并且最终的flash.net/mx.rpc引用通常会出现在服务层中。另一方面,Swiz似乎旨在充分利用flex和mxml格式,因此它可能会在这里更快地完成工作。所以你可能还想考虑使用Swiz for flex和其他语言的PureMVC。

+1

谢谢 - 我将与Swiz一起,找不到足够的可移植性好处切换的证据。另外,我相当确信Swiz将成为Silverlight的一个简单端口。 – Karthik 2009-12-14 12:20:14

+1

忘了提及,由于缺乏良好的证据,最好的做法是使用pureMVC制作一个小测试应用程序,使用带有1或2个服务器调用的Swiz(登录+获取某个列表),然后移植它们对Silverlight都是如此。 – 2009-12-14 14:42:54

0

任何框架,包括Swiz,都可以很容易地移植到任何语言。 Actionscript正在巡回完成,因此理论上任何在actionscript中编写的代码都可以转换成另一种巡回完成语言。例如,我们在我们的移动应用程序中使用Swiz框架,它们被交叉编译以在iOS中运行。还有许多其他开源交叉编译器适用于各种语言,以及Adobe的Alchemy project

唯一不便于在Swiz中使用运行时元数据标签的方法。这可以通过使用高级搜索和替换实用程序或自定义转换框架将自定义元数据标记转换为其本机代码实现来解决。希望很快我们会看到一些很酷的新的开源工具,现在Flex 4.5已经发布了custom compiler hooks

简而言之,在决定框架时,​​我甚至不会考虑可移植性。选择一个最适合您或您的开发人员使用的设备。我个人比较喜欢Swiz。

干杯!