1. 什么是Eclipse RCP Application

10 篇文章 0 订阅

Eclipse RCP application ,RCP(Rich Client Platform)也就是我们常说的富客户端平台, 是一种基于eclipse platform框架的独立的应用程序。Eclipse 不仅仅是我们耳熟能详的IDE工具,也是一种开发框架,是IBM贡献给全人类宝贵财富。本文将从Eclipse结构方面开始价绍。

2 Eclipse 的架构
2.1 基于application 的 Eclipse 架构
完整的Eclipse是一个由一个个的组件共同组合而成的,我们口中常说的Eclipse其实是Eclipse IDE,他是一个专注于软件研发工作的特殊的Eclipse Application。Eclipse本身也是一个开发Application的框架。
Eclipse 的IDE的核心组成如下图所示,但下图也仅仅只是表明一个大致的结构概念,组件之间的关系并不是完全准确的:
Eclipse 核心组件
一般的每一个Eclipse Application 都是用了这些基础组件,并在基础组件上添加额外的模块,来完成特殊的任务。我们所熟知的Eclipse IDE是在上图所示的组件结构之上又增加了额外的模块,比如GIT, JDT
Eclipse IDE组件

2.2 Eclipse Platform的核心组件
这里不得不提的就是OSGi。OSGi是java application开发中的一种规格模块,OSGi模块允许我们动态定义软件组件,比如: OSGi服务,Equniox是一种OSGi的实现组件,并在运行时由Eclipse Platform所使用,这种Equniox runtime为运行一个Eclipse Application 模块了必要的API和Framework。

  • SWT(Standard Widget Toolkit)是Eclipse所使用的一个标准的用户交互组件库;
    -JFace 是在SWT的基础上对一些控件进行了封装,丰富并优化了SWT的功能,为开发提供了更加方便的API;
  • Workbench则为Eclipse Application提供了运行框架,他负责展示所有的用户界面。
  • EMF (Eclipse Model Framework)为Eclipse Application提供了功能模型,数据模型。

    2.3 Eclipse API和 Internal API
    一个OSGi运行时环境允许开发人员将java包标记为Public API和Provisional API。从字面意思不难理解:

  • Internal API是内部的私有的API,对外是不可见的;
  • Provisional API是为了测试的API,是可见的但也是不稳定的;
  • Public API是开放的,稳定的API,允许其余组件反复使用的API;
    Eclipse 中三种API

Eclipse platform将java包标记为public API或者Provisional API是为了让开发人员访问到所有的java文件,若Eclipse 发布一个public API那么Eclipse Platform团队将会尽可能保持该API的稳定性。

若一个API被标记为Provisional API, 虽然我们可以访问到,但是尽量不要去使用。这样的标记意味着Eclipse Platform团队随时有可能会去改变这个API,一旦我们使用了这样的API,最好做好随时修改代码的准备,如果项目庞大,也许就万劫不复了······

2.4 Eclipse plug -in 的配置文件

一个Eclipse Plug-in有如下的文件,这些文件定义了API和plug-in的依赖关系

  • MANIFEST.INF:包含了OSGi的配置信息;
  • plug-in.xml:是一个可选的配置文件,包含了Eclipse 的特殊的扩展机制的信息。

一个Eclipse plug-in可以定义自己的元数据(Meta data) ,如同插件本省的ID, 他可以通过MENIFEST.INI发布自己的API 和依赖。
Eclipse plug-in机制提供了为插件本省创建或者为Eclipse本身提供代码贡献的机制,通过在plug-in.xml的配置文件中天剑Extension-point为别的插件提供贡献代码的接口;通过Extension为这些接口提供实现,可以在插件本省实现也可以在别的插件中实现。这种机制是非常灵活的。

声明:本文翻译于国外一个大神对Eclipse Platfrom的介绍:Eclipse RCP

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值