代码之家  ›  专栏  ›  技术社区  ›  Karthik

flex应用程序框架-pureMVC可移植性与swiz?

  •  1
  • Karthik  · 技术社区  · 15 年前

    我的公司正在构建一个灵活的应用程序,我们可能需要移植到其他平台:

    • Silverlight(可能)
    • Mobile(也许是iPhone:Objto-C,Android:Java等)
    • 桌面(可能--空气,.net等)
    • 电视机(也许最终)

    目前,我在寻找要构建的应用程序框架,我在pureMVC和swiz之间挣扎。

    我喜欢Swiz,因为它的简单性以及它给了你一种连接东西然后应用你自己的模式的方法。从纯弹性的角度来看,这是我的第一选择。

    但是,pureMVC是独立于平台的,并且已经移植到上面提到的大多数平台上。 这种便携性有多重要? 当涉及到移植和开发/维护多个应用程序时,它真的会让我们的生活更加轻松吗?如果是这样的话,那么pureMVC似乎就是一条出路。

    另外,由于Silverlight有最明确的业务案例来移植我们的应用程序,也许我们可以 从swiz端口到Silverlight ?我不太熟悉哪些AS3语言和Flex框架功能取决于Swiz,以及它们是否在C/Silvelright中可用。 这真的可能吗?

    非常感谢!

    卡蒂克

    2 回复  |  直到 13 年前
        1
  •  3
  •   bug-a-lot    15 年前

    在我看来,如果您使用pureMVC,您可以移植到一种新的语言,而不会有太多的麻烦(除了新语言将给您提供的以外),您的命令、中介和代理,只要您将中介编程到一个接口,而不是具体的组件实现,并且代理使用服务层从服务器获取数据。。这样,您只需要用新语言实现组件和服务层。

    快速查看swiz框架:

    • 使用Flash事件模型(请参阅CentralDispatcher)
    • 使用一些flash.net和mx.rpc类(请参阅net和rpc swiz包)

    pureMVC框架不使用flash事件模型,最终的flash.net/mx.rpc引用通常会出现在服务层中。另一方面,Swiz似乎旨在充分利用Flex和MXML格式,因此它可以更快地完成工作。因此,您可能还需要考虑对flex使用swiz,对其他语言使用pureMVC。

        2
  •  0
  •   drkstr    13 年前

    任何框架,包括swiz,都可以非常容易地移植到几乎任何语言。ActionScript正在完成巡演,因此理论上,ActionScript中写入的任何代码都可以转换为另一种巡演完整语言。例如,我们在我们的移动应用程序中使用了Swiz框架,这些应用程序经过交叉编译后在iOS中运行。有许多其他的开放源码交叉编译器,可用于多种语言,以及Adobe的 Alchemy project .

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

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

    干杯!