技术开发 频道

Eclipse RCP:构建平台


IT168分析评论】 
    技术有一定的周期,在经历十年的瘦客户端的统治之后,胖客户端正逐渐取得优势地位,很多大的组织使用胖客户端来创建他们的用程序,并且这些应用程序很多都建立在基于Eclipse Rich Client Platform (RCP)上,术语”胖客户端”意味着,首先应用程序应该提供给用户一个丰富的体验,其次,应用程序是某个服务器的客户端. 

    Rich clients与fat clients相比,两者都给用户提供本地的桌面体验,提供给客户那些困难的,不需要的,或者使用瘦客户端不好表达的信息和功能.然而, Rich clients提供的更多一些, fat clients趋向于单片集成电路的应用,这些应用难于部署和更新, Rich clients是基于组件的轻量级的模型.他相对容易部署和更新.过去fat clients建立在指定的平台上,今天Rich clients技术显示了底层平台的力量,隐藏了平台的细节.允许开发者关注于业务而不是指定平台的特殊细节. 

    Rich clients的升级比fat clients容易, fat clients直接的连接数据库,这就限制了fat clients运行的环境(防火墙可能限制), Rich clients的配置非常灵活且容易升级. 

    没有什么规则来描述Rich clients应用一定是相应服务器的一个客户端,许多企业使用Rich clients技术来创建健壮的,可扩展的,易于更新的,本地化的应用. 

    Rich clients表现出了fat-client 和thin-client技术的紧密结合: Rich clients客户的体验,高度扩展性,平台独立性,容易部署. 

    Eclipse RCP是Eclipse平台核心的功能,大多数人认为Eclipse是一个集成开发环境,如果去掉Eclipse IDE的这部分,剩下的核心就提供了基本的工作台的功能,包括支持活动的可折叠的windows组件(editors and views)菜单,工具条,按钮,表格,树等等.这些核心的功能就是Eclipse RCP. 

    组件: 
    Eclipse RCP是由许多组件组成的,组件通常被认为是插件,实际上,几乎所有的Eclipse RCP是由组件组成的,通常开发一个应用是以单个插件开始的,在这个插件内可以定义用户接口,业务逻辑或对象模型,创建一个Eclipse Rich clients非常容易,选择File>New>Project...,选择create a new Plug-in Project按照向导来创建一个rich client应用,如图:


    这将产生一个新的插件包括RCP应用需要的部分,如workbench配置文件,单个视图.

    Wizard产生以下类: 
    Application.java 
    ApplicationActionBarAdvisor.java 
    ApplicationWorkbenchAdvisor.java. 
    ApplicationWorkbenchWindowAdvisor.java 
    Perspective.java 
    View.java 

    下一步是修改或产生代码,通过修改或增加菜单,菜单项,工具条,视图和编辑器.
IT168分析评论】 
    组件的装配 
    当一个应用程序的代码被分为多个插件时,创建一个RCP应用是装配这些插件为一个整体的过程,定义插件集是产品配置的角色,为应用创建产品配置通过File>New>Product Configuration. Wizard如图3所示:

    此时需指定一个父插件工程,有三个不同的方式来创建初始化配置: 
    1. 用基本的设置来创建配置,用这个选项,一个空的配置就被创建了. 
    2. 使用已经存在的产品,用这个选项,用存在产品配置中的值来创建一个新的配置. 
    3. 使用launch配置,如果以前使用Run As->Eclipse Application菜单选项运行过应用,将使用这个选项. 
    你可以根据应用的要求来指定插件的名字,如图

    可以不必导出应用来运行,直接在workbench中运行,这是一种非常好的方式来测试配置和使用调试器来解决问题,在产品配置编辑器的视图页面上有两个选项来运行应用,即Launch the product和"Launch the product. 

    构建平台: 
    由于RCP应用是管理要处理的事务,所以应用的核心功能是提供一个对象表示和要做任务的可视化清单.如图 

    结论: 
    Eclipse RCP是一个强有力的构建rich-client应用的框架,RCP的核心是OSGi编译组件,该组件可以被动态的发现和加载.他们能被更新和扩展.随着基于多个扩展插件平台的发展, Eclipse RCP真正的优势将会发挥.

0
相关文章