IBM把投入巨资开发的Eclipse作为一个开源项目捐献给了开源组织Eclipse.org,Eclipse出色
而有独创的平台特性,现在仍由IBM子公司OTI(主要从事Eclipse开发的人)继续领导着Eclipse的开发.
Eclipse的设计思想是:一切皆为插件.Eclipse的核心是非常小的.其他所有的功能都是以插件的形式附加到这个Eclipse核心智商的.
这样的功能插件包括他的图形API(成为SWT和JFace).Java开发环境插件(简称JDT),插件开发环境(PDE).
Eclispe对这些插件是动态载入动态调用的,所谓动态就是指,Eclipse启动后要真正用到这个插件时,才会被调入内存,当插件不再使用时,它就会被在适当的时候清除出内存.因此即使装了一大堆插件在Eclipse中,也不必担心某些不常用的插件白白的占用内存.
Java的标准图形API:AWT/SWING界面不够美观.响应速度慢,一直被人诟病.
Eclipse的SWT/JFace图形API彻底改变了这一个状况.
他们在实现上有很大的不同:AWT/SWING是模拟本机窗口组成.而SWT/JFace则直接调用本机窗口组件.当本机没有所需组件的时候才进行模拟.
SWT/JFace没有Java的跨操作系统的特性.每一个操作系统要用Eclipse,都要移植一次SWT/JFace.但是SWT/JFace已经移植到了几个主流的操作系统平台.所以这个已经不再是一个问题了.
Eclipse的插件扩展机制是其最突出的特点和优势,它使Eclipse提升到了一个平台的高度.
Eclipse的开放源代码让他们可以阅读最顶级的Java源码.学习最优秀的Java技术.在Eclipse中阅读这些源码,有着诸多的设计模式的使用.其编码的优雅和高效真是令人叹服不已.
由于是基于Eclipse平台开发的软件,其界面美观度和相应速度是普通AWT/SWING程序所无法比拟的.并且以Eclipse插件方式来开发系统.可以基于原有Eclipse菜单,编辑器来扩展,节省了很多开发精力.
SWT/JFace
SWT(Standard Widget Toolkit) AWT (Abstract Windowing Toolkit)
JFace是建立在SWT之上的UI部件,是Eclipse组织为了开发Eclipse IDE环境所编写的一组底层图形界面 API,其底层实现为SWT。
SUN在GUI方向上的失败是工人的事实,失败关键是java的图形API包AWT/SWING在速度和外观上都不能让人满意,外观总是和同操作系统平台格格不入,对机器配置的需求也似乎永无止境;
虽然SUN不接纳SWT/JFace作为Java中的一种图形API标准.但是它依然借着Eclipse的优异表现,以不可阻挡的势头向前发展着.拥有着标准的Windows外观.Eclipse软件就是基于SWT/JFace构建的.
为了方便开发SWT程序,在SWT基础上又创建了一个更易用,功能强大的图形包JFace.然而JFace并不能完全覆盖SWT的所有功能,所以编程时SWT和JFace都会被用到.但是一般来说能用JFace的组件就最好不要用SWT.
SWT中的包:
SWT是Eclipse图形API的基础.
1.org.eclipse.swt.widgets
最常用的组件基本都在该包中,如