写点什么

Eclipse Ganymede:深入 RAP(Rich Ajax Platform)

  • 2008-06-24
  • 本文字数:1976 字

    阅读完需:约 6 分钟

作为即将到来的计划于 6 月 25 日发布的 Eclipse Ganymede 的一部分,InfoQ 的报道将会覆盖一系列 Eclipse 的子项目。今天,主角是 RAP(Rich Ajax Platform),它正好发布了 1.1 版。InfoQ 采访了 Jochen Krause 以更多地了解 RAP 以及它所提供的功能。

为了描述 RAP 给 Eclipse 带来的功能,Krause 首先把 Eclipse 的用户分成了两类:一类是使用 Eclipse IDE 以及其工具来进行开发,一类是使用基于 Eclipse 平台的应用。krause 表示,对于 IDE 及工具用户来说,开发工具将只会暴露 RAP 本身,而 RAP 的功能对于他们是透明的。与此不同的是,对于使用基于 Eclipse 平台应用的用户来说,他们现在将有能力运用基于 OSGi 的 Eclipse 插件开发模型,JFace 以及 Web 版的 SWT 来构建支持 AJAX 的富 Web 应用。RAP 的意图类似于 Eclipse 富客户端项目(RCP),主要的区别在于更精简的 API 以及为 Web 应用的多用户特性所做的增补。相对于 RAP 1.0,1.1 版扩展了 API,引进了一系列诸如 SWT 的鼠标事件,JFace 的图像装饰器以及工作台的增强等等新特性——同时它也包含了 Eclipse 3.4 的新功能,比如安全的增强和 widgets 的阿尔法着色。

当被问到 RAP 将如何与诸如 Dojo,GWT,OpenLaszlo 等 AJAX 框架相搭配,krause 谈到:

RAP 是一个专注于服务器端的 AJAX 框架并与 OSGi,Equinox 和 Eclipse 平台有着紧密的关系。要与其它的框架相比并不容易,因为他们的关注点有所不同。Dojo,GWT,OpenLazlo 的 widgets 工具箱非常出色,但却不能提供一个广泛的应用平台。我们并不将其视为竞争对手,相反的是,他们或许将成为 RAP 后续版本客户端表现的附加选项。RAP 现有的客户端表现是基于 qooxdoo 的,这同样是个强大的 AJAX 框架。RAP 和 GWT 都支持开发者用 Java 编写,但其运行时模型却大不相同,GWT 是整个在浏览器执行的,而 RAP 的执行被分成了服务器端和客户端两部分。

Krause 同时提到了 RAP 能够将单一的代码源(codebase)编译成 AJAX 应用,或者编译成 RCP 应用,并表示这并不像看上去那么复杂。编译是针对于同样的工作台,JFace 和 SWT APIs 来完成的,但当以 Web 应用来运行时,这些库的常规版本都被替换成了其支持 Web 的版本。在运行时,这些应用的代码都跑在服务器上,并有一个基于 JavaScript 的 UI 来向服务器传送事件和向客户端传送结果。然而,Krause 也指出了 RAP 开发者必需引起注意的三件事:

  1. Web 是一个多用户环境,所以在一个静态对象中(如 singleton)保持应用状态是有可能引起问题的。
  2. 现有的 RAP 是 RCP 的一个子集——如果期望得到超出 RAP 支持的 RCP 附加功能,这里推荐的做法是通过插件来引入它们。
  3. 因为应用是在服务器上执行,开发者不应给每个用户分配大量的内存(这同样也是桌面应用的最佳实践)

作为下一代 SWT 的一部分,RAP 计划提供完全基于 AJAX 的 SWT 实现。Krause 指出并不是所有的平台都支持 SWT API,并且 SWT 是为桌面应用而设计的。尽管大多数的 SWT API 都能被实现,但像在画布上描绘以及探测鼠标移动等功能还有待于浏览器在这些方面的进一步改善和提高。目前还欠缺的像拖拽和键监听器等 API 已计划在 RAP 的下一发布版本中,并将包含来自其它团队的技术,例如 SWT 的用于 StyledText widget 等复杂组件的 Java/Flex 交叉编译。

关于 RAP 的远景规划,Krause 表示将着力于两个主要的领域:扩展 RAP API 以实现更多的 RCP API,以及利用 Eclipse 平台让用户从 Web 的视角获得更加自然的用户体验。Krause 进一步阐释了第二点,RAP 通过与可用性专家紧密协作,分析用户交互,以解决来自易用性的挑战。Krause 同时看到了 Web 应用和桌面应用通过 AJAX 和 RIA 的融合将带来的好处,并提到研究表明在 Web 环境里通过基于 Eclipse Draw2D API 来提供图形编辑器是可行的。

当问到 RAP 将如何与 E4 集成并影响 E4,Krause 表示:

在浏览器运行 IDE 这一用例对我来说没什么吸引力。JDT 在我的机器上表现非常出色,我相信大多数开发者都有同样的感觉。但这并不表示没有 Web 技术让我们变得更方便的用例。看一看需求,任务管理或是开发流程管理。这是我所能预见 RAP 在未来将会发挥作用的领域。但回到这个问题。Eclipse 平台团队和 RAP 团队在 08 年的 EclipseCon 上共同宣布了 e4,并即将在 Ganymede 发布之后开始在这一平台上的工作。RAP 将会是众多使应用具备 Web 能力的技术中的一分子,但并不会是其唯一的可能。我们同样需要支持其它的附加于 Eclipse 平台的 web/JavaScript 技术。我期待着孕育出更多的跨(领域)合作。RAP 团队将提供实现以及平台对多用户的专门技术支持,SWT 团队对诸如 Flex/Silverlight 等 RIA 平台的交叉编译进行了研究。更优化的风格是我们合作的另一关键领域。还有更多的东西没有被提到,但那理应再对 E4 本身进行一次采访了。

查看英文原文 Eclipse Ganymede: An in-depth look at RAP (Rich Ajax Platform)

2008-06-24 05:202006
用户头像

发布了 133 篇内容, 共 43.8 次阅读, 收获喜欢 1 次。

关注

评论

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

虚拟人,如何用好这个“外挂”?一定要看看这本书!

博文视点Broadview

云栖大会Day1:云应用开发平台 CAP 来了

阿里巴巴云原生

阿里云 云原生 云栖大会

探索高质量大模型推理平台建设路径——大模型推理标准第二次研讨会即将召开

中国信通院AI Infra工作组

海尔连续3年蝉联生态品牌认证“领航者”,飞书获评“突破者” ,共建生态绿洲

ToB行业头条

助力企业降低成本,ByteHouse打造新一代“弹性”云数仓

字节跳动数据平台

数据库 大数据 云原生 Clickhouse 数仓

Apache Doris 2.1.6 版本正式发布

SelectDB

数据仓库 数据分析 LakeHouse 物化视图

LED厂家告诉您LED玻璃幕墙如何设计

Dylan

设计 艺术 LED LED display LED显示屏

一文说清楚ETL与Kafka如何实现集成

谷云科技RestCloud

kafka 数据处理 分析 ETL 数据集成

活动预告:“大模型时代下AI中台”主题沙龙

中国信通院AI Infra工作组

大模型训练平台标准第三次研讨会即将召开

中国信通院AI Infra工作组

京东商品属性的详细api数据解析:颜色、尺寸与材质

技术冰糖葫芦

API Gateway API 接口 API 测试 pinduoduo API

java线程池使用指南

巧手打字通

Java 性能优化 线程池

“前沿思享会:探索AI+材料新边界”闭门研讨会顺利召开

中国信通院AI Infra工作组

探索高质量大模型训练平台建设路径——大模型训练标准第三次研讨会顺利召开

中国信通院AI Infra工作组

万界星空科技电线电缆行业MES系统核心功能

万界星空科技

mes 万界星空科技 电线电缆行业 电线电缆mes

云南大理等级保护测评机构在哪里?电话多少?

行云管家

等保 云南

可信AI评估|中国信通院可信AI“大模型一体机”第二批评估正式启动

中国信通院AI Infra工作组

《科研智能(AI4R&D)——人工智能驱动的研发新范式》正式发布

中国信通院AI Infra工作组

中国信通院边缘人工智能平台标准首轮评估正式启动

中国信通院AI Infra工作组

【Tomcat源码分析】从零开始理解 HTTP 请求处理 (第一篇)

派大星

tomcat源码解读

中国信通院可信人工智能基础平台(AI Infra)评估工作正式启动

中国信通院AI Infra工作组

阿里巴巴拍立淘API返回值:商家优化商品信息的深度指南

代码忍者

API 测试 pinduoduo API

AI助力低代码平台:从智能化到高效交付的全新变革

天津汇柏科技有限公司

低代码 AI 人工智能

中国人工智能产业发展联盟正式发布《科研智能(AI4R&D)——人工智能驱动的研发新范式》

中国信通院AI Infra工作组

华为全联接大会2024︱鲲鹏计算产业峰会成功举办

极客天地

Amazon Bedrock 模型微调实践(二):数据准备篇

亚马逊云科技 (Amazon Web Services)

人工智能

VMware Live Site Recovery 9.0.2 发布下载,新增功能概览

sysin

vmware esxi

中国信通院启动科研智能(AI4R&D)重点标准化方向及参编专家征集工作

中国信通院AI Infra工作组

Eclipse Ganymede:深入RAP(Rich Ajax Platform)_Java_Ryan Slobojan_InfoQ精选文章