常用开发工具Eclipse的实现机制和原理是什么?
Java学习网(www.javalearns.com)提拱
我们学习和开发过程中用到Java的地方,就有Eclipse的影子,Eclipse平台是目前流行的Java开发工具之一,很重要的一个原因是它开源免费;有人会说我用的是MyEclipse,它的功能更强大,其实MyEclipse是Eclipse的升级版,使用更方便但它是收费的,不管它免费还是收费,它们都极大的方便了我们的开发;Eclipse之所以能升级为MyEclipse,是因为Eclipse平台是建立在OSGi框架之上,插件式开发,每个开发者都可以实现自己的插件,是不是很牛啊,可以做编程工具了,下面学习一下Eclipse平台的机制和原理。
网络配图
因Eclipse平台是建立在OSGi框架之上,我们首先要简单了解一下OSGi框架是什么?
OSGi(全称Open Service Gateway Initiative)技术即面向Java的动态模型系统是Java动态化模块化系统的一系列规范。OSGi一方面指维护OSGi规范的OSGI官方联盟,另一方面指的是该组织维护的基于Java语言的服务(业务)规范;简单来说,OSGi可以认为是Java平台的模块层。关于OSGi框架了解这些就可以了。
Eclipse平台是遵循OSGi框架协议的一个插件的集合,这个插件框架非常的复杂;我们用一图来说明一个插件是如何工作的,如下图
网络配图
在Eclipse工作平台中每种插件之间存在两种关系:
1、依赖;在上面的图中,插件依赖插件B。
2、扩展;在上面的图中,插件扩展插件C。
以上简单了解了Eclipse的插件关系;可以说整个Eclipse就是由插件组成的,我们先看下它明晰的层次关系,它的插件层
次图,如下所示:
+Eclipse SDK
org.eclipse.sdk
+Eclipse Platform
+RCP
org.eclipse.core.runtime
org.eclipse.ui
org.eclipse.update.configurator
org.eclipse.swt
org.eclipse.jface
org.eclipse.platform
org.eclipse.debug
org.eclipse.ant
org.eclipse.help
...
+JDT
org.eclipse.jdt.core
org.eclipse.jdt.ui
org.eclipse.jdt.doc
org.eclipse.jdt.debug
org.eclipse.jdt.junit
+PDT
org.eclipse.pde
org.eclipse.pde.build
org.eclipse.pde.core
org.eclipse.pde.runtime
org.eclipse.pde.ui
org.eclipse.pde.doc
org.eclipse.pde.source
从上面的结构可以看出,Eclipse SDK是这些插件的总和;在这些插件中,最核心的是RCP所用的几个插件,
org.eclipse.core.runtime,org.eclipse.ui。org.eclipse.core.runtime主要提供跨平台的运行时支持,以及对其它插件
的管理机制;而org.eclipse.ui则提供跨平台的界面支持。
网络配图
总结一下,Eclipse平台首先是基于OSGi框架,由大量插件通过依赖和扩展两种关系组合在一起,形成了一个功能强大的开发工具。
在之后的软件设计和开发过程中,我们可以借鉴一下Eclipse的插件思想,把它运用到软件当中,使软件具有更好的重用性和重组性,提高软件的实用价值。
以后的章节中会介绍如何开发出一个Eclipse的插件,并安装到Eclipse平台上,我们也能给Eclipse的发展做贡献,是不是咱自己好强大啊!!!
请↙↙↙点击“阅读原文” ….
- 牙线没有用 这话真的可信吗?
- 高考英语[书面表达]常用高分短语与高频短语语境记忆!附巩固练习
- 男女密码大不同:男常用“password” 女偏好爱人姓名
- 盘点!2017年这些流行语刷屏朋友圈,你最常用哪一句?
- Excel表格常用快捷键大全之1-10个(含操作演示)
- 【词汇记忆】透过词根知词义 托福常用阅读常见词根90个
- 项目中常用的19条MySQL优化
- 经常用微信和支付宝的,最好关掉这个功能!不然…
- 【英语】2018考研英语最常用的“一词多义”!
- 慢阻肺患者应该如何用药?附:常用药物及注意事项