`
eyes1842
  • 浏览: 18055 次
  • 性别: Icon_minigender_1
  • 来自: 默认
最近访客 更多访客>>
社区版块
存档分类
最新评论

基于Eclipse RCP的应用平台

阅读更多

B/S结构的应用的优势和劣势是什么?呵呵,优势我不说了。在开发企业应用时,有一些情况下BS是不能胜任的,或者是说需要花很大的代价才能做到,比如驱动外设,打印,复杂的页面控制等。而传统的C/S结构的应用可以很好的解决这些问题,能不能把这两者的优点结合起来呢?

 

有这样一个想法,就是设计一个基于Eclipse RCP的应用平台,暂时叫它“Eclipse Application Planform”吧。设计的思路是这样的:它的功能就是一个“浏览器”,不过它浏览的不是网页,而是一个Eclipse RCP应用,就像使用浏览器一样,首先得下载一个Eclipse RCP 框架,大概15M左右,另外,为了屏蔽客户端的JRE的差异,可以把JRE(1.6版本,解压后大概80M)也打到框架里,一起下发给客户端。ok,框架下发到客户端了,就像装好了IE浏览器一样,可以浏览应用了。第一次使用某个应用时,输入应用名称和更新服务器的地址,(服务端需要有一个版本更新服务器,可以是一个web应用,提供http或FTP文件下载,作为各个应用的版本管理)。然后客户端框架就自动下载对应的java class文件,然后启动Eclipse RCP应用。一旦某个应用有更新,只需要在服务端版本服务器上做更新,客户端就会自动更新(当然,支持全量和增量更新)。这样岂不是解决了客户端部署维护的难题?还有一点:Eclipse RCP 是一个标准的框架,只要基于他开发的应用都可以导出成单个应用bundle,然后发布到版本更新服务器,供客户端使用,而这个过程不需要额外对客户端的部署,只需要告诉客户端应用名称和更新服务器的地址就行了。

 

平台的优点:

1、客户端操作简单,第一次只需下载框架,然后解压就可以运行(已经自带JRE)。

2、一个框架,可以运行不同的应用,(当然这些应用都是基于Eclipse RCP开发的,而且版本兼容)。

3、BS结构和CB结构应用的优势互补。(也可以叫BS与CS的折中吧)

 

平台的缺点:

1、框架太大,加上JRE的话,可能会超过100M。(对于企业内部的应用,这个不算什么,毕竟就下载一次)。

2、基于Eclipse的应用,消耗客户端的资源比较大。(现在的客户端的运算能力都很强大了)


其实很多企业的C/S应用都带有自动更新的功能,而这里强调的是:它是一个平台,可以浏览不同的应用,只要应用按照Eclipse RCP 规范开发的即可。不知大家对这个思路有什么看法。
分享到:
评论
13 楼 yutianapple 2010-03-29  
rcpjingdian
12 楼 yutianapple 2010-03-27  
Rcp经典电子书 给大家共享
11 楼 eyes1842 2010-03-22  
fireflyc 写道
好吧。如果这样的话,我们还是用delphi吧,该是它登场的时候了。
1. 客户端代码小巧,界面美观大方。而且还可以跨平台(需要CLX)
2. 发达的中间件,CORBA、COM++、EJB、应有尽有。当然你可以发扬山寨精神进行山寨各种通讯协议。
3. 开发速度快,delphi的IDE全世界一流,有那么多经历了考验的控件你可以使用。性能高,而且还很稳定。

好了,让我们告别B/S回归C/S吧。。。

存在就是合理。
所有东西存在就有他的理由。
并不是要告别BS,回归CS。
关于BS还是CS的问题,这要看场合。
我们的原则是,在满足客户需求的前提下,以最简单可靠的方式去构建系统。

Eclipse RCP 有他的优势,EclipseRCP 跨平台也没问题。
如果server端是java写的话,基于java的client是首选。

如果 Eclipse RCP 成为一个大家拥护框架,就像浏览器一样。我们做的一个个插件就像一个个网站一样,只要知道插件的名字,就可以下载插件并运行。

B/S的web应用写了也有几年了,感觉页面操作性比较复杂的应用,还是C/S的稳定好用。
客户也喜欢使用CS的东西,只要更新部署简单。更新对客户是透明的。
10 楼 fireflyc 2010-03-22  
好吧。如果这样的话,我们还是用delphi吧,该是它登场的时候了。
1. 客户端代码小巧,界面美观大方。而且还可以跨平台(需要CLX)
2. 发达的中间件,CORBA、COM++、EJB、应有尽有。当然你可以发扬山寨精神进行山寨各种通讯协议。
3. 开发速度快,delphi的IDE全世界一流,有那么多经历了考验的控件你可以使用。性能高,而且还很稳定。

好了,让我们告别B/S回归C/S吧。。。
9 楼 eyes1842 2010-03-22  
是用了Eclipse RCP的插件机制。
但不是用Eclipse 的RCP更新机制。更新机制使自己写的,可以完全控制eclipse的更新,包括整个EClipse RCP 框架的更新。对客户端完全透明的更新。
一个标准的RCP应用,所以可以使用RCP的框架的全部功能。

这年头,咱们做的东西多少是自己创新的呢?其实把该掌握的东西掌握了,就了不起了。
不是吗?

8 楼 javahead 2010-03-22  
JRE压缩后可以精简到10M
仅利用RCP的更新和插件机制,没有什么创新的
7 楼 smartinvoke 2010-03-22  
楼主所说的和我现在正在做的SmartRCP有异曲同工之妙哦
http://www.iteye.com/news/13593-SmartRCP-Flex-Eclipse-rcp
6 楼 eyes1842 2010-03-21  
wsc830719 写道
楼主说的不正是 eclipse4.0吗? 

下一代的eclipse,比你说的还要简单。
直接将eclipse rcp应用生成flex 或ajax等应用,直接就在浏览器里运行。
你说的,不现实,谁会装你的客户端呀?
类似的swing早就存在这样的框架了 ,比如echo,还有一个是基于apache授权的,名字忘了,都是直接写Java代码,然后在浏览器端就可以访问。echo效率还能勉强接受,但是灵活性就没了,这种东西适合不愿接触js的开发者,如果会js,还是自己弄的好,容易控制功能。

e4,目前情况太渺茫了,即使弄出来,可以预见 效率不会太好。
而且e4,声称不用js ajax,不过最近不是也引入js代码了吗,可见,不写js是很难控制灵活性的。e4已经改变了初衷了。
eclipse越来越复杂,难道失去方向了。我觉得一个开发工具应该在易用性上找方向,
简化开发,提高开发效率才是应该做的。相反,eclipse总是在包装,越来越复杂。
别看我这么关注eclipse,其实我是netbeans的爱好者。
       netbeans符合我的意愿。 看看.net开发工具做的简单易用,多少人在埋怨Java开发效率太低啊。  netbeans在走简化开发的道路,而eclipse真的看不出来,或许eclipse只关注Java最前沿,像什么OSGI 等等,不过话说回来,100个企业里有几个是有这种需求的企业,我想90%的都是小型企业吧,他们需要的是快速开发的工具。


谢谢wsc830719的意见。
我想说两点:
1、关于这个客户端,客户愿不愿意装的问题。这个要看是什么客户,像我现在的项目接触的客户,都是企业用户,都是在局域网里或是专线,应该不成问题。

2、关于生成JS,然后再浏览器里运行的问题。我们需要的不是编译成JS然后再浏览器里运行,而是直接就是一个java程序,在客户端的虚拟机里运行(因为我们把JRE随框架一起打包下发)。转成JS的话,运行速度和控制外设都不是很理想。

说白了,就是一个C/S结构的系统。只不过有B/S结构应用的客户端快速分发部署的功能而已。并且这个框架可以当成一个内部的框架,使用这种结构的系统,而每个应用能直接在这个框架里跑。这就是“应用浏览器”和“网页浏览器”的区别。
5 楼 icefire 2010-03-21  
wsc830719 写道
楼主说的不正是 eclipse4.0吗? 

下一代的eclipse,比你说的还要简单。
直接将eclipse rcp应用生成flex 或ajax等应用,直接就在浏览器里运行。
你说的,不现实,谁会装你的客户端呀?
类似的swing早就存在这样的框架了 ,比如echo,还有一个是基于apache授权的,名字忘了,都是直接写Java代码,然后在浏览器端就可以访问。echo效率还能勉强接受,但是灵活性就没了,这种东西适合不愿接触js的开发者,如果会js,还是自己弄的好,容易控制功能。

e4,目前情况太渺茫了,即使弄出来,可以预见 效率不会太好。
而且e4,声称不用js ajax,不过最近不是也引入js代码了吗,可见,不写js是很难控制灵活性的。e4已经改变了初衷了。
eclipse越来越复杂,难道失去方向了。我觉得一个开发工具应该在易用性上找方向,
简化开发,提高开发效率才是应该做的。相反,eclipse总是在包装,越来越复杂。
别看我这么关注eclipse,其实我是netbeans的爱好者。
       netbeans符合我的意愿。 看看.net开发工具做的简单易用,多少人在埋怨Java开发效率太低啊。  netbeans在走简化开发的道路,而eclipse真的看不出来,或许eclipse只关注Java最前沿,像什么OSGI 等等,不过话说回来,100个企业里有几个是有这种需求的企业,我想90%的都是小型企业吧,他们需要的是快速开发的工具。


比较认同,不过现在eclipse或者netbeans都没太多精力去弄,目前netbeans的前途还不好说,oracle虽然不会砍掉,但明显会减少投资。eclipse其实已经不走开发工具的道路,已经是完全平台化方向,开发工具留给像MyEclipse来做。
4 楼 wsc830719 2010-03-21  
楼主说的不正是 eclipse4.0吗? 

下一代的eclipse,比你说的还要简单。
直接将eclipse rcp应用生成flex 或ajax等应用,直接就在浏览器里运行。
你说的,不现实,谁会装你的客户端呀?
类似的swing早就存在这样的框架了 ,比如echo,还有一个是基于apache授权的,名字忘了,都是直接写Java代码,然后在浏览器端就可以访问。echo效率还能勉强接受,但是灵活性就没了,这种东西适合不愿接触js的开发者,如果会js,还是自己弄的好,容易控制功能。

e4,目前情况太渺茫了,即使弄出来,可以预见 效率不会太好。
而且e4,声称不用js ajax,不过最近不是也引入js代码了吗,可见,不写js是很难控制灵活性的。e4已经改变了初衷了。
eclipse越来越复杂,难道失去方向了。我觉得一个开发工具应该在易用性上找方向,
简化开发,提高开发效率才是应该做的。相反,eclipse总是在包装,越来越复杂。
别看我这么关注eclipse,其实我是netbeans的爱好者。
       netbeans符合我的意愿。 看看.net开发工具做的简单易用,多少人在埋怨Java开发效率太低啊。  netbeans在走简化开发的道路,而eclipse真的看不出来,或许eclipse只关注Java最前沿,像什么OSGI 等等,不过话说回来,100个企业里有几个是有这种需求的企业,我想90%的都是小型企业吧,他们需要的是快速开发的工具。
3 楼 wing5jface 2010-03-21  
在RCP里集成FLEX也是一种常见的方法。
2 楼 eyes1842 2010-03-18  
iamlibo 写道
通讯协议是http?还是自定义的socket?

与更新服务器的通讯协议用http,而里面各自的RCP应用,使用什么通讯协议都可以,由各自的应用决定。
而这个框架会预先集成目前java所流行的远程通讯协议,像spring remote 之类的。每种通讯协议的集成就是一个bundle,方便各个应用之间共享。
1 楼 iamlibo 2010-03-18  
通讯协议是http?还是自定义的socket?

相关推荐

    eclipse rcp应用系统开发方法与实战源代码.zip

    在"eclipse rcp应用系统开发方法与实战源代码.zip"中,我们可以学习到以下关键知识点: 1. **Eclipse RCP架构**:理解Eclipse RCP的基础架构非常重要,包括插件(Plugins)、工作台(Workbench)、视图(Views)、...

    基于Eclipse RCP的复合应用

    在“基于Eclipse RCP的复合应用”中,我们可以理解这是一篇关于如何利用Eclipse RCP框架来构建复杂、模块化的桌面应用的文章或教程。IBM中国研发中心的专家们对此进行了深入研究和实践,分享了他们的经验和见解。IBM...

    Eclipse RCP 应用系统开发方法与实战

    2. **工作台(Workbench)**:是Eclipse RCP应用的基础,它管理着应用的窗口、视图和编辑器。开发者可以通过编程接口(API)对工作台进行控制,如创建新窗口、切换透视图等。 3. **视图(Views)**:视图是显示特定...

    [基于Eclipse.RCP的复合应用开发].扈晓炜等.扫描版

    《基于Eclipse.RCP的复合应用开发》是扈晓炜等人撰写的一本关于使用Eclipse Rich Client Platform(RCP)进行软件开发的专业书籍。Eclipse RCP是一个强大的框架,用于构建桌面应用程序,它允许开发者利用Java语言和...

    Eclipse RCP 应用系统开发方法与实战 源代码

    Eclipse Rich Client Platform (RCP) 是一个强大的框架,用于构建桌面应用程序,它基于Java,提供了丰富的用户界面组件和强大的插件系统。本资源提供的"《Eclipse RCP 应用系统开发方法与实战 源代码》"是针对...

    Eclipse RCP应用系统开发方法与实战jar包

    陈冈所著的《Eclipse RCP应用系统开发方法与实战》一书,深入浅出地介绍了如何利用Eclipse RCP进行软件开发,涵盖了从基础概念到实际项目构建的全过程。 在提供的jar包中,我们可以找到一系列支持Eclipse RCP开发的...

    Eclipse RCP应用系统开发方法与实战(源代码)

    本资源提供了"Eclipse RCP应用系统开发方法与实战"的源代码,涵盖从基础到进阶的多个章节,便于学习和实践。 在提供的压缩包中,我们可以看到以下几个部分: 1. **第9章.rar** - 这一章可能涵盖了RCP应用系统的...

    eclipse rcp应用系统开发方法与实战

    本项目“Eclipse RCP应用系统开发方法与实战”旨在深入探讨如何利用Eclipse RCP进行软件开发,通过实践案例来提升开发者的技术能力和实践经验。 Eclipse RCP的核心特点包括模块化、可扩展性和高度定制性。模块化...

    论文研究-基于Eclipse RCP的商务信息管理平台中加密模块的设计与实现 .pdf

    基于Eclipse RCP的商务信息管理平台中加密模块的设计与实现,金星善,,RCP (Rich Client Platform) 是基于Eclipse开发平台而推出的一套用来开发富客户端程序的应用框架,其主要功能是能够为开发人员提供一个快速�...

    Eclipse RCP应用系统开发

    【Eclipse RCP应用系统开发】是针对软件开发领域中的一个特定技术,即Eclipse Rich Client Platform(Eclipse RCP)的深入探讨。Eclipse RCP是Eclipse框架下的一个开发平台,它允许开发者构建桌面应用程序,具有丰富...

    Eclipse RCP培训.zip

    这个"Eclipse RCP培训.zip"文件很可能包含了关于如何开发基于Eclipse RCP的应用程序的各种教程、示例代码和讲解材料。现在,我们将深入探讨Eclipse RCP的相关知识点。 Eclipse RCP提供了一个强大的开发环境,它允许...

    Eclipse rcp深入浅出中英文版及配套代码

    通过阅读《Eclipse RCP深入浅出》并结合提供的代码样例,开发者不仅可以学习到Eclipse RCP的基本概念,还能学会如何创建和调试实际的RCP应用程序。这是一本非常实用的参考资料,对于希望在Java桌面应用领域工作的...

    EclipseRCP教程

    Eclipse RCP(Rich Client Platform)是一种基于 Eclipse 平台的客户端开发技术,能够帮助开发者快速构建功能强大且界面美观的桌面应用程序。在本教程中,我们将详细介绍 Eclipse RCP 的开发过程、技术要点和注意...

    eclipse RCP mp3工程

    【标题】"eclipse RCP mp3工程"指的是一个基于Eclipse Rich Client Platform(RCP)构建的专门处理MP3音频文件的应用程序。Eclipse RCP是一个强大的开发框架,允许开发者创建桌面应用,它提供了丰富的用户界面组件和...

    eclipse RCP Plug-in开发自学教程.pdf

    eclipse RCP(Rich Client Platform)是一种基于eclipse的插件式开发平台,允许开发者使用eclipse结构风格设计弹性的可扩展的应用程序。RCP插件式开发方式可以重用eclipse中的方法和编码模式,提高开发效率和代码...

    eclipse.rcp应用系统开发方法与实战(含源码)

    总之,"eclipse.rcp应用系统开发方法与实战"提供了一个深入学习Eclipse RCP平台和Hibernate集成的宝贵机会。通过对源码的分析和实践,开发者可以提升在桌面应用开发领域的专业技能,特别是在处理复杂数据操作和定制...

    EclipseRcp 例子程序

    2. **工作台(Workbench)**:工作台是Eclipse RCP应用程序的中心,负责管理窗口、视图、编辑器等元素。开发者可以自定义工作台布局,例如添加新的视图或编辑器。 3. **视图(View)**:视图是用户界面中显示特定...

    ECLIPSE RCP应用系统开发方法与实战.pdf

    《ECLIPSE RCP应用系统开发方法与实战》是一本深入探讨Eclipse Rich Client Platform (RCP) 开发技术的书籍。Eclipse RCP是Eclipse IDE的一部分,它提供了一个框架,允许开发者构建功能丰富的桌面应用程序。这本书...

    Eclipse RCP开发详解

    部署方面,Eclipse RCP应用通常打包为一个可执行的JAR或ZIP文件(称为RCP产品)。产品配置文件定义了运行时环境的详细信息,如启动参数、插件列表等。你可以使用PDE的打包工具生成最终的部署包。 最后,测试和调试...

    [基于Eclipse.RCP的复合应用开发].扈晓炜等.pdf

    [基于Eclipse.RCP的复合应用开发].扈晓炜等.pdf .

Global site tag (gtag.js) - Google Analytics