论坛首页 Java企业应用论坛

Eclipse 助我成功

浏览 2311 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-08-31  
    期盼很久的Eclipse europa版本今天正式发布。早上一起床我就登上了Eclipse网站,果真可以下载了,激动之情难以言表,逐赶紧下载。下载后,解压、运行、升级,一切OK。Eclipse对我的帮助是非常大的,她帮助我成功地开发了汽车客运站联网售票系统。衷心感谢Eclipse基金会!我要告诉大家,选择Eclipse就是选择成功!
一、 选择Eclipse
    2006年5月,是我人生的转折点,我决定自己创业。
    我创业的项目是汽车客运站联网售票系统,当时国内的售票软件都是采用Delphi、Powerbuiler、VB或VC开发的,都是基于Windows操作系统及单一的数据库产品,要么是Oracle,要么是SQL Server。这此产品,不仅可扩展性差、价格昂贵,而且用户的投入成本也很大,对那些欠开发、欠发达的农村客运站来说,简直是可望不可及。这些售票软件要实现联网售票,一般采用两种解决方案:一是采用交易中间件(如Tuxdeo),然后由各客运站的售票软件供应商修改各自的软件,实现联网售票;二是采用WebService,中心采用Java开发,售票系统用WebService对售票部分进行封装。这两种方案都不是最佳方案,可扩展性差、性能低、投资成本大,还存在安全性问题。另外,这两种方案要实现全省、全国联网售票,还需要做很大的改造。因此,我就想开发一个100%纯Java的联网售票系统,实现跨平台、跨区域、支持多种数据库。刚好JavaEE5.0 和EJB3.0在2006年5月发布,让我坚定了创业的决心,决定使用Eclipse作为开发工具,基于JavaEE5.0、EJB3.0、JBoss4、Web2.0构建全国联网售票系统。
    以前在公司时使用JBuilder开发Java应用,虽然下载了Eclipse也没时间学习。自己创业决定使用Eclipse,之所以选择Eclipse,一则是因为她免费、开源,能够降低开发成本;二则是在使用JBuilder时,总觉得有些不爽,比如设计EJB时,当EJB数量增多时,保存.ejbgrpx这个XML文件常常会出错,而我使用Eclipse一年多时间以来,稳定极了,从来没有出现此类低级错误。Eclipse简单易学,很快就上手了,如今已经不记得JBuilder是什么样子!
二、 将Java Application移植到Eclipse RCP
    构建客户端应用程序时,有几个基本问题是开发人员必须考虑的:
 如何启动应用程序?
 如何为不同的角色授予相应的操作权限?
 如何保证系统的可扩展性?
 如何进行系统的升级更新?
 如何显示联机帮助?
    普通Java 应用程序是通过批处理来启动的,总觉得不太好;为不同的角色授予相应的操作权限,编程实现也特别烦琐;版本升级比较麻烦,一般使用Java Web Start技术实现;集成联机帮助也需要编码实现;另外,您必须自己实现MVC架构,更甭谈可扩展性了。
    经过对Eclipse RCP(胖客户端平台)进行研究,我决定使用RCP构建客户端应用,这是因为Eclipse RCP提供了以下好处:
    1、可以通过一个EXE文件启动应用程序;
    2、可以扩展ActionDelegate的init方法,为不同的角色授予相应的操作权限;
    3、拥有集成完全不同的工具和应用程序的能力,易扩展性和易定制性是Eclipse深受程序员喜爱的原因之一。
    4、可以通过使用Update Manager来更新客户端的应用程序,实现应用程序的升级替代。
    5、提供了一个全面的框架,能够在应用程序中提供在线帮助。
    将Java Application移值到Eclipse RCP,还需要将Swing移植到SWT,需要学习SWT、JFace等相关知识,尤其是在项目的后期,这种移植的工作量非常大,是需要下很大的决心的。
三、 将Swing移植到SWT
    将Java Application移植到Eclipse RCP就注定了必须将Swing移植到SWT,放弃Swing是跟我这个项目有关的。售票系统注重实时性和人机交互,特别是在售票的时候,能够希望只通过键盘实现快捷操作。而Swing的JTable却很难做到这一点,在JTable上单击回车键,光标就自动下移一行,用户根本不知道自己究竟选择了哪一行,挺烦的,而SWT能够实现精确控制。另外,SWT在界面上也比Swing漂亮许多,JFace还提供了许多控件,让编程更加简单。将项目从Swing移植到SWT虽然花费了我近两个月的时间,但是效果却很明显:控制操作可随心所欲了、程序运行变快了、界面更美观了、结构更简单了。
四、升级到3.3版本
    虽然3.3版本新增了许多功能,比如拼写检查、对类的成员排序、显示插件依赖情况等,但我最喜欢的还是Datetime控件。由于我的应用程序在许多地方需要使用日期,比如发车日期、售票日期,这使得我需求一个控件能够让用户很方便地选择日期。搜索了第三方日期插件,总觉得不理想。当看到3.3版本提供了Datetime控件时,我立马升级了 Eclipse版本。不过,美中不足的是,Datetime控件提供的方法还不太丰富,需要我们自己扩展。
五、 喜欢Eclipse
    经历过汇编、VC、Delphi、Powerbuilder,我喜欢上Java,因为Java我喜欢上Eclipse,而Eclipse又使我更加喜欢Java。喜欢Eclipse不仅因为她免费、开放源码、易定制和稳定,喜欢Eclipse更因为她可扩展的架构。正如Robert C.Martin所说:“The beauty of software is in it's function, in it's internal structure, and in the way in which it is created by a team.(软件之美在于它的功能,在于它的内部结构,还在于团队创建它的过程)”。
    使用新技术是有风险的,而Eclipse为我们降低了风险,帮助我们取得成功。面对新技术,我们不应该畏惧不前,而应该提高驾驭风险的能力。
    衷心感谢这些开源软件,开源让社会变得更加和谐,开源让生活变得更加美好!
    Eclipse europa今天正式发布,恰逢香港回归十周年,吾儿出生三周岁之际,按奈不住激动之情,聊作此文,以兹纪念。
 
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics