写点什么

Ruboss——面向 Rails 的 Flex 框架

  • 2008-12-07
  • 本文字数:1304 字

    阅读完需:约 4 分钟

Ruby on Rails(ROR)是一个基于 Ruby 的用于快速 Web 应用开发的开源框架。Rails 和 RIA 社区目前都在积极地寻求两者的集成方案,而 Flex 框架 Ruboss 就是这样一个成果。InfoQ 采访了 Ruboss 的联合创始人及 CEO Peter Armstrong 以更深入地了解该框架。

根据 Armstrong 所述,Ruboss 框架是一种尝试以简化 Flex 应用和 RESTful 服务器端框架的集成。现在这些框架包括 RoR 和 Merb。Ruboss 还提供了一个 RESTful 接口以使其可以与 Adobe AIR 的嵌入式 SQLite 数据库进行通信。 Ruboss 框架之于 Rails 和 Merb 的关系就好象 Adobe LiveCycle Data Services ES 之于 J2EE 应用的关系。

当被问到为何不利用现有的一些框架,如 Cairngorm 或 PureMVC 时,Armstrong 解释到:

他们太简单了,无法满足我们的需要。Ruboss 框架的架构与 Cairngorm、Mate 及 PureMVC 都不同。它是一个数据集成框架,专注于 Flex 与 RESTful 框架的集成。把 Ruboss 看作是“Flex + Rails”是很不错,但更加贴切的描述应该是“Flex + 简单的 RESTful CRUD”,其中 Rails 只是最流行且目前集成的最好的一个框架而已。 我们所需要的东西应能无缝地集成 Flex 和 RoR 并且会将 Rails 开发上的一些设计原则和生产力带到 Flex 中。我们觉得 Rails 是最具有生产力的服务器端框架之一,而 Flex 是最好的客户端 RIA 技术之一。因此,自然而然地我们想将这二者结合起来。

因此,我们真的没有与 Cairngorm、PureMVC 或 Mate 进行竞争。例如,虽然你所编写的 Flex 代码会以类似于 Cairngorm 的方式(它通过命令模式对使用进行了简化)去使用 Ruboss,但你还可以用比 Cairngorm 更简洁的方式去使用 Ruboss。

Armstrong 继续谈到 Ruboss 一些独特的特性:

首先,我们是唯一一个将 RESTful CRUD 作为通用接口的 Flex 框架,这一点与 Rails、Merb 及 AIR 中的 SQLite 是不同的。这种简化、优雅的设计使得大家可以对 Ruboss 框架进行扩展以支持目前我们尚未提供的一些服务。例如,Ruboss 的使用者可以将其连接到 CouchDB 上。因此,Ruboss 就可以对服务进行扩展以达到与 Flex 的完美集成。 其次,你使用 Ruboss 编写的代码不仅对传输方式来说是抽象的,而且还非常简单和优雅。第三,你可以快速上手并运行起来。通过使用 Ruboss,你可以在 5 分钟内创建一个完全的 Flex+Rails 应用。没有任何 Flex 框架能做到这一点,也没有任何 Flex 框架可以让你在这么短的时间内就完成从数据模型的编写到应用运行的整个过程。想知道怎么做吗,看看 Ruboss“pomodo”指南吧。

最后,我们认识到没有任何一个框架能满足所有的数据集成需求或是解决所有应用的架构问题。因此,我们所做的就是尽力解决那 80% 的常见问题。

Armstrong 又谈到了 Ruboss 框架的路线图:

对于该框架来说,我们打算在本地和远程服务提供商之间增加数据同步支持,因为目前这是应用开发者必须要自己解决的问题。我们还打算将对 Merb+DataMapper 的支持提升到 Merb+Active Record 上来。这之后,我们会考虑扩展 Ruboss 以支持更多的服务,如 SimpleDB 及 Google AppEngine。

Peter Armstrong 还是 Flexible Rails 一书的作者及 Hello! Flex 4 的主要编写者。

查看英文原文: Ruboss – A Flex Framework on Rails

2008-12-07 10:361621
用户头像

发布了 88 篇内容, 共 273.2 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

在线诺基亚短信图片生成器工具

入门小站

工具

2021腾讯Android面试题精选,复习指南

欢喜学安卓

android 程序员 面试 移动开发

带你看清梦饷集团如何成为上海在线新经济四小龙

华为云开发者联盟

MySQL 数据库 mongodb 电商 华为云数据库

Linux之free命令

入门小站

Linux

golang--字典树

en

数据结构与算法 字典树

Python开发篇——如何在Flask下编写JWT登录

吴脑的键客

Python flask JWT

Python OpenCV 图像处理之 图像运算和图像位运算知识补充

梦想橡皮擦

7月日更

2021年中国DevOps现状调查报告发布!

华为云开发者联盟

DevOps 敏捷 安全 华为云DevCloud 信通院

校友卡微信小程序开发总结

CC同学

结对编程,到底是双剑合璧还是脚趾抠地?

华为云开发者联盟

编程 软件 敏捷 敏捷开发 结对编程

Linux ssh命令详解,连ssh命令都不了解就别说自己会用Linux了

北游学Java

Java Linux SSH

Confluence 7 如何修改启动内存

HoneyMoose

7月日更,FAIL!FAIL?

Nydia

云小课 | 一分钟了解AppCube中的应用

华为云开发者联盟

低代码 云小课 应用 AppCube 应用魔方

🏆「推荐收藏」【Git实战专题】代码提交错误怎么办?教你如何回退版本!

码界西柚

git git flow git reset git revert

2021年最新大厂Android面试笔试题目,威力加强版

欢喜学安卓

FIL云算力挖矿平台系统开发案例

Geek_23f0c3

云算力挖矿系统开发详解 云算力模式系统开发源码 filecoin矿机哪家好? fil挖矿

吴亦凡都美竹事件:男人全员恶人?

6979阿强

【翻译】数据包的旅程 - OSI模型

luojiahu

计算机网络 OSI模型

2021Java面试心得:kafka工具

Java 程序员 面试 后端

马拉松还是骇客松 Hackathon?

escray

学习 极客时间 朱赟的技术管理课 7月日更

个性化联邦学习算法框架发布,赋能AI药物研发

华为云开发者联盟

联邦学习 药物研发 算法框架

奥运神颜运动员

6979阿强

iOS开发底层面试攻略

面试 移动开发 ios开发

🏆【Java 技术之旅】带你深入理解和认识SPI运作机制

码界西柚

Java 抽象 spi 7月日更

云计算架构师-带你安装MySQL数据库并去除安全隐患

学神来啦

MySQL 数据库 Linux 运维 MariaDB

2021Java面试心得:docker运行springboot项目

Java 程序员 面试 后端

Building deep retrieval models

毛显新

自然语言处理 深度学习 tensorflow 推荐系统 keras

IM与办公平台的关系设计

superman

产品经理 架构师 IM 移动办公平台 自建移动办公

HarmonyOS开发者日杭州站举办,多维赋能开发者实现高效开发

科技汇

从0到1亿用户的架构设计

俞凡

架构

Ruboss——面向Rails的Flex框架_Java_Moxie Zhang_InfoQ精选文章