要用JAVA开发GUI,SWT,Jface,RCP有什么联系?什么关系。

第一次用java开发GUI,有些不懂。开发工具肯定是Eclipse了。发现新的Eclipse3.7,可以使用免费的插件SWTdesigner(Windowbuilderp... 第一次用java开发GUI,有些不懂。
开发工具肯定是Eclipse了。
发现新的Eclipse3.7,可以使用免费的插件SWT designer(Window builder pro)。
这个插件以前是收费的,好事情呀。
具体用了一下,新建画面的时候,swt,jface,rcp出现了,每个都有各自的画面。有很大区别吗?
自己查了查,swt是基础,jface是swt的扩展,rcp是框架?
画面不是太复杂,用哪个比较好。大家开发都用哪个呀??哪个用的广泛??
展开
 我来答
anrainie
推荐于2017-11-24 · TA获得超过1012个赞
知道小有建树答主
回答量:306
采纳率:0%
帮助的人:364万
展开全部
首先你要明白,eclipse本身就是基于SWT的。

SWT是eclipse公司发布的一个GUI编程框架,即是说,这个是最基本的开发工具。
JFace是对SWT的一个封装,它丰富、优化了SWT的功能。
RCP呢,就是Rich Client Platform,它相当于一个组件的集合。你可以用它来定制你自己的eclipse产品。

他们并不是三选一的关系。
SWT和JFace基本不分家的,在开发同一个界面的时候,尽量使用JFace的功能,JFace实现不来的时候就用SWT。
RCP是一个开发的方向(类似web也是一个开发方向一样),目前应用国内相对少,不过学精通还是很有前景的。你要学RCP,SWT和JFace都是它的基础。
tpblzgauv
2011-10-29
知道答主
回答量:24
采纳率:0%
帮助的人:28.3万
展开全部
jsf是表示层的框架,主要是web界面方面的应用;而其他的都属于桌面UI库,与前者不同,在此不做比较。
AWT是java早期版本使用的UI库,为了跨平台,它指提供各个平台上支持的组件的最大公约数集合..比如苹果操作系统并不支持按钮的图片展示,于是AWT的按钮是无法使用图片的;AWT的实现是以本机对等体的方式来实现的,即一个Button对象则对应于本机一个窗口组件(利用本地程序实现映射),于是AWT组件与本地组件长得是一模一样的。
SWING则是基于AWT的基础上做了许多扩展,它提供的是各种平台上支持的组件的最小公倍数集合..在设计上使用了MVC(分UI、Component、Model),除了窗口之外,其大部分组件都使用Java2D来实现渲染模拟,也因为如此,Swing在渲染方面的灵活性非常大。
SWT是IBM公司针对Java桌面UI开发出来的另一个分支,它的实现方式与AWT类似,都使用了本机对等体的实现,于是它的组件也与本机组件非常雷同;此外它遵循最小公倍数原则,对于非公共组件部分,它又使用了类似Draw2D库的API来模拟渲染。JFace是SWT的增强包,它是对SWT的进一步封装,使得SWT界面开发的模块划分更加清晰,代码也更加维护。

综上,在渲染的灵活性上面,swing是最优的,因为它的渲染可在java程序中实现(MVC),而AWT和SWT则因为本机对等体的缘故不是那么灵活;在内存占用上面,AWT和SWT比swing要少得多,而且也响应也要快一些,这是因为Swing将组件的渲染信息(甚至是像素信息)都放在程序内存中,并由自己管理,所以Swing界面响应很慢是不足为怪的~~;在支持的组件集合上,SWT和Swing比AWT丰富得多;最后,在稳定性上面,SWT稍显不足~~
上面的几种UI库中,Swing和SWT都占据一定的份额吧,Swing在一些报表图形展示方面有更好的灵活性,也有比较好的开源组件支持(如JFreeChart);而SWT在快速应用开发方面是非常合适的,Eclipse界面便是SWT的实现,而也基于此出现了Eclipse RCP技术(类似于MFC),该技术整合了SWT
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式