1.2.2 Eclipse RCP概述
在Eclipse早期,IBM的Lotus开发小组认为可以将Eclipse作为其工作台的富客户端版本。同时,许多Eclipse用户也认为Eclipse本身可以作为一个特殊的富客户端应用,并将这些建议反馈给Eclipse开发小组。Eclipse开发小组认真考虑并吸纳了这些建议,于是在Eclipse 3.0发布时,正式声明将Eclipse作为通用的富客户端和IDE。随着Eclipse 3.1和Eclipse 3.2版本的发布,Eclipse RCP富客户端平台应用快速增加。Eclipse RCP具有以下优点:
● 组件化。基于Eclipse的系统设计由被称为plug-ins的插件构成,可以通过扩展点进行配置,也可以被不同应用程序共享。
● 便利性。Eclipse RCP对各个平台下的产品包装提供了强有力的支持,其开发的RCP甚至可以在嵌入式设备、掌上电脑上运行。Sun公司对Java的口号是“write once, run everywhere”,Eclipse也可以说是“RCP run everywhere”。
● 智能安装和升级。Eclipse提供了专门的Update组件,可以实现通过HTTP、Web站点、复制等多种方式进行安装和更新,一扫早期富客户端应用部署升级的麻烦。
● 可扩展性。Eclipse基于插件进行扩展的思想使得用户可以方便地搭建各种规模、类型和用途的应用程序。按照Eclipse官方的说法,Eclipse RCP一开始就被设计为可扩展的。
● 开发工具支持。目前,随着Eclipse插件开发环境的日趋成熟和不断流行,基于Eclipse RCP的插件越来越多,特别是有大量免费的插件可供下载,这有利于加速产品的研发进程。
● 本地观感及使用体验。Eclipse为各种操作系统提供了本地图形接口包。当RCP运行时,Eclipse首先直接调用本机窗口组件,只有没有本机所需组件时才进行模拟。无论RCP在哪种操作系统上运行,都可以保持与本机一致的外观和行为。一个设计优良的富客户端,可以提供诸如拖曳操作、剪切板、导航等UI元素。UI设计者也可以利用各种界面工具,轻松设计出完美的用户界面。
● 脱机操作。由于RCP在本机运行,不需要网络连接,可以充分利用本机硬件的处理能力高速进行大量数据的处理。
Eclipse RCP能够给予开发者创建可扩展客户端应用程序的能力,也给广大Java开发者提供了编写具有特色鲜明的本地观感及使用体验的富客户端代码的能力。Java在桌面应用方面一直表现不佳、提不起精神,致使Sun公司不断受到众人的诟病。Eclipse RCP横空出世,有望扭转Java在桌面应用的颓势。图1-2即是贯穿本书的一个Eclipse RCP信息管理系统截图。
图1-2 一个Eclipse RCP信息管理系统