作者:陈刚,桂林人,97年毕业于广西师范大学数学系,暂于IBM中国研究中心以外包人员身份从事软件开发(2004.2-?),专注基于java平台的软件开发。
email:glchengang@hotmail.com
blog:glchengang.yeah.net
前言:补一篇Eclipse插件开发的简介。
用JAVA的AWT或SWING来开发过Application(胖客户端的应用程序)的程序员,都有过非常痛苦的经历。笔者就曾在3年前用记事本+JDK开发过一个Applet(也要用到Swing与Application类似),其界面开发的艰难与界面的丑陋仍历历在目,笔者也用过一些用SWING写的应用程序,除了Jbuilder和一些大公司写的少数几个软件还过得去以外,其界面基本只能用丑陋与呆板来形容,JAVA在Application方面的失败已是不争的事实。
然而当Eclipse和SWT渐渐闻名于江湖,开发大型的美观的性能优良的JAVA Application程序已成为现实。看过Eclipse界面的人绝对想不到Eclipse是用纯JAVA写的吧,在Eclipse3的里程碑版M8,界面更是华丽无比,让人炫目,看起来就象是苹果电脑上的软件一样(如下图)。比较Jbuilder的还略带方头方脑的界面风格,Eclipse已经在界面美观程序上超出Jbuilder很多了。因为Eclipse没有沿用JAVA的AWT、SWING,而是自己开发了一套界面API包:SWT、Jface,想必很多人都听说过了。
用过Eclipse的人很多,但大多数人还只是用于开发J2EE,其实Eclipse还有一个重要的开发方向:Eclipse的插件开发。Eclipse是在面向对象方面做得很出色的一个编辑器,注意Eclipse只是一个用JAVA写的编辑器而已,它可以变化成其它的东西,如:J2EE开发工具、C++开发工具等等,这一切功能的扩展皆来源于其插件机制。你只要编写相应的插件,Eclipse就可以变成你想要的功能,包括变成一个企业管理信息系统,没错,它的确可以。请看如下界面(运行于Eclipse2.0版)。这是一个正在开发中的信息系统类软件。
怎么样,以上的图片让你动心了吗?用Eclipse插件来开发的系统,界面美观且界面响应速度快(Eclipse重写了JAVA的画点等绘画函数),而且可以继承Eclipse的原来框架,如菜单对话框、树型框、事件机制、停泊窗等等,这使得开发速度得到很大提高,你不必须要象SWING那样从头到尾来构建一个系统,你所要做的是继承继承再继承。这似乎也提出了一个新的开发概念,我们不是继承那个类,我们是继承一个完整的系统程序框架。如果你正在开发JAVA应用程序,我认为使用Eclipse插件方式来开发将是当仁不让的选择。
让SWING成为过去吧,我只要Eclipse和SWT,因为它真的很美很快很好。
--------------------往来邮件--------------------------
刘海波:您好,看了您再csdn中写的一些文章,能否问一些问题:您写的是web还是什么啊?您再eclipse的ide中浏览数据库是用的什么插件啊?您界面开发用的是什么插件啊?我想粗略知道一些您作的那个信息系统类软件的一些信息(主要是用什么插件和开发方式等)我用eclipse做过web,hibrnate+struts的,cvs作版本管理,谢谢,谢谢!
答:
1、这个项目不是WEB方式的,它是一个依附于Eclipse平台开发的应用程序,就象VB写的那种.
2、我们不是在ecilpse中浏览数据库,在初期用Mysql做数据库中我用Mysql Control Center,后来改成DB2后,我用WASD来浏览. 不过在hibernate中国网站有一个写中国人自己写的读写映象文件的插件,可以浏览数据库。
3、我们用hibernate来要数据库映象层.CVS来做版本管理。
4、主要是用到SWT、JFace,界面开发可以不用其它插件了。我用到一个叫SWT Designer的插件来做帮助我做界面初期的设计开发,但它不能全部完成界面的工作(界面复杂后,它极其不稳定,很容易因内存不足导致Eclipse退出),还是要手式修改代码。我用SWT Designer做初步界面,再将其代码复制到项目中,然后手工调。
5、关于图像部份是用了draw2d,还有GEF(象那个鹰眼图,右边的各个图象元素是可拖动的)。
不知我回答完你象知道的内容了吗。