学习指导 关于Flex Server集成的X2O框架知识问答

本文和大家重点讨论一下针对Flex Server集成的X2O框架,随着RIA技术的不断成熟,对RIAs与服务器端技术集成的需求越来越迫切了。来自于WeAreMammoth公司的X2O框架就是针对Flex的这样一种集成方案。

针对Flex Server集成的X2O框架

随着RIA技术的不断成熟,对RIAs与服务器端技术集成的需求越来越迫切了。来自于WeAreMammoth公司的X2O框架就是针对Flex的这样一种集成方案。InfoQ有幸采访了WeAreMammoth的合作者KaWaiCheung以了解X2O框架如何适应基于Flex的RIA开发。

◆InfoQ:Flex Server集成的X2O框架是什么?

Cheung:X2O是一个针对AdobeFlex应用的基于Web的数据建模平台。它使你可以快速构建数据库驱动的Flex应用而无需任何服务器端代码或设置。

通过使用X2O,你无需创建自己的数据库、构建存储过程、编写服务器端代码、甚至都不用将你的AS3代码集成到数据服务中。所有这些事情都由X2O帮你做好了。

相反,你只需创建一个数据模型(如果需要的话还可以对其或多或少进行配置)并生成框架。然后你就可以立刻使用生成好的代码及工具去构建你的Flex应用了。特别地,你会得到一个安全的CMS以管理数据,一个根据你的数据模型而定制的AS3SWC文件及全部文档。X2O会创建好包含基本的CRUD方法的值对象、关系,同时还会根据你的配置生成定制的加载方法。

由于这一切都是通过Web实现的,因此无需进行安装。你只需将生成的SWC库放到你的Flex项目中就行了。你可以修改数据模型并重新生成这一切,这样看来X2O就是一个敏捷平台。

◆InfoQ:为什么要创建X2O框架,它要解决什么问题?

Cheung:FlexRIA开发的一个主要问题是它要求开发者有非常广的知识面。开发者需要精通数据库、某种服务器端语言(如PHP、Ruby、C#等等)、客户端与服务器端的集成(remoting、webservices或者是SOAP),当然还要会编写AS3/MXML并构建于MVC/Cairngorm这样的架构之上。

X2O通过处理所有繁琐的服务器端编程与集成简化了整个Flex的开发过程,而这些工作过去需要几个开发者用几天甚至几周的时间才能完成。这使得Flex开发者可以将全部精力集中在Flex上,同时还能够完全控制数据的构造方式。

本质上,X2O使得Flex开发者能够专注于其领域,就像服务器端开发者一样,不用了解其他语言。

此外,X2O是完全基于web的。除了你的Flex开发环境以外,不需要其他的安装和设置。如果说还有需要解决的问题的话,那可能就是X2O将快速的Flex开发与云编程结合起来了。

对于简化使用Flex进行客户端与服务器端集成的需求越来越多了。针对Rails的WebORB插件很有趣——但使X2O与众不同的却是你无需编写任何服务器端代码,也不用做任何集成。X2O开发者只需在Flex环境下编写代码以推/拉数据,同时还能够完全控制数据模型。

◆InfoQ:Flex Server集成的X2O在服务器端的架构如何?

Cheung:一个X2O项目的服务器端部分是绝不会暴露给开发者的,因为它总是运行在远程幕后的。简单地说,X2O会生成一个数据库、存储过程、一个数据访问层和web服务层。SWC文件(开发者需要下载该文件并将其放到Flex项目中)直接与web服务层集成。开发者只需调用SWC文件中的值对象上的方法就行了,其他的代码都被生成好了。我们还对客户端与服务器端之间的请求和响应进行了加密。

正如我之前所说,还会生成一个安全的CMS及文档——他们在服务器上作为单独的站点运行。

◆InfoQ:开发X2O都使用了哪些技术,如何使用的?

Cheung:X2O底层构建在.NET上。因此我们现在使用了SQLServer2005和.NET2.0。我们还通过开源的Flex框架生成了ASDocs。

◆InfoQ:Flex Server集成的X2O典型的使用场景是什么?

Cheung:X2O可以应用于任何数据库驱动的Flex项目。过去两年中我们公司(WeAreMammoth)已经使用X2O开发了很多东西,从只有静态内容的简单站点到包含很多业务逻辑的拥有大量数据的交互式应用。

我们还发现X2O对于原型开发来说非常有用。通常,Flex中的原型利用率都很低,因为当你开始开发一个“真正”的版本时,大多数原型都会被丢弃。借助X2O,你可以在几分钟内开发出一个数据模型并立刻将其与真正的、受管理的数据进行集成。这使得我们可以无缝地将原型转换为真实应用。

◆InfoQ:它是免费的么,它的发布计划如何?

相关推荐