在计算机开发语言的历史中,从来没有哪种语言象Java那样受到如此众多厂商的支持,有如此多的开发工具,Java菜鸟们如初入大观园的刘姥姥,看花了眼,不知该何种选择。的确,这些工具各有所长,都没有绝对完美的,就算是老鸟也很难做出选择。在本文中我简要介绍了常见的十五种Java开发工具的特点,管中窥“器”,希望能对大家有所帮助。+ b0 a7 H9 d/ n
% X+ L1 K" b( e$ w& J! r
& k! s4 o5 T X: m5 n 1、JDK (Java Development Kit) / m8 ~- `+ t' ~6 p1 v2 n( ]8 i3 I# L5 s SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK)。开发人员和最终用户可以利用这个工具来开发java程序。 & N1 {4 h" x* E6 u, J! D$ w- ?/ @4 g5 ?2 W
JDK简单易学,可以通过任何文本编辑器(如:Windows 记事本、UltrEdit、Editplus、FrontPage以及dreamweaver等)编写Java源文件,然后在DOS状况下利通过javac命令将Java源程序编译成字节码,通过Java命令来执行编译后的Java文件,这能带给DOS时代程序员美好的回忆。Java 初学者一般都采用这种开发工具。/ O: g) _6 S& u r1 K$ T
8 E# S" o+ f2 V" R 从初学者角度来看,采用JDK开发Java程序能够很快理解程序中各部分代码之间的关系,有利于理解Java面向对象的设计思想。JDK的另一个显著特点是随着Java (J2EE、J2SE以及J2ME)版本的升级而升级。但它的缺点也是非常明显的就是从事大规模企业级Java应用开发非常困难,不能进行复杂的Java软件开发,也不利于团体协同开发。7 L& G' h p* I/ n& S: z0 U 2、Java Workshop , K% u0 v/ @: a8 ~* c- w " }- I* v% K, O: A ( ]" D1 Z. }0 H
6 u) s' i p- @; u5 Z$ X# @$ d4 H
Sun MicroSystems公司于1996年3月26日推出了Java WorkShop 1.0,这是业界出现的第一个供Internet网使用的多平台开发工具,它可以满足各公司开发Internet和Intranet网应用软件的需要。Java WorkShop完全用Java语言编写,是当今市场上销售的第一个完全的Java开发环境,目前Java WorkShop的最性版本是3.0。Java Workshop的特点表现如下:* f! }" g# y; Y) n" c0 a
% |3 p5 j0 D& N+ [5 C6 F, g
1)结构易于创建:在创建平台中立的网格结构方面,Java Workshop比其他任何一种Java开发工具都要方便。 6 K% e) E3 S; H/ a9 \# }" U. c, h* F$ I S
2)可视化编程:Java Workshop的可视化编程特性是很基本的。Java Workshop允许程序员重新安排这些操作,甚至可以确定触发操作行为的过滤器。Java Workshop产生的模板带有许多注释,这对程序员是很有帮助的。2 t# z/ n/ F( u9 K. Y* k
/ H3 [* G H% d7 g( e8 E; K) ?" R 此外,Java WorkShop支持JDK1.1.3以及JavaBeans组件模型,API和语言特征增加了编译Java应用程序的灵活性。 Java WorkShop开发环境由于完全用Java写成,所以可移植性极好,以致于多个平台都能支持,目前Java WorkShop支持Solaris操作环境SPARC及Intel 版)、Windows95、WindowsNT、以及HP/Ux等平台。适合于初学者进行一些简单的Java编程。Java WorkShop的缺点是Java Workshop中的每一个可视化对象都迟早会用到网格布局,这种设计方法是许多人不习惯的;Java Workdshop的调色板是较差的,仅仅能满足绝大部分应用的基本要求。# x, P0 N; e' U9 ^4 P 3、NetBeans 与Sun Java Studio 5 h7 G8 `7 n: z" @
. k7 G- W; _. s- M# @* E7 s2 g! O
( U1 U) l' K4 H9 @+ P' ]" _ NetBeans是开放源码的Java集成开发环境(IDE),适用于各种客户机和Web应用。 Sun Java Studio是Sun公司最新发布的商用全功能Java IDE,支持Solaris、Linux和Windows平台,适于创建和部署2层Java Web应用和n层J2EE应用的企业开发人员使用。 % B- i% @8 ?6 p* f" G8 {) Z ]: L' W- Q8 t5 \
NetBeans是业界第一款支持创新型Java开发的开放源码IDE。开发人员可以利用业界强大的开发工具来构建桌面、Web或移动应用。同时,通过NetBeans和开放的API的模块化结构,第三方能够非常轻松地扩展或集成NetBeans平台。 6 s8 N; m+ i b; t' J! ^ " S0 m1 I- X4 i% {9 l. q5 ]/ w NetBeans3.5.1主要针对一般Java软件的开发者,而Java One Studio5则主要针对企业做网络服务等应用的开发者。Sun不久还将推出Project Rave,其目标是帮助企业的开发者进行软件开发。NetBeans 3.5.1版本与其他开发工具相比,最大区别在于不仅能够开发各种台式机上的应用,而且可以用来开发网络服务方面的应用,可以开发基于J2ME的移动设备上的应用等。在NetBeans 3.5.1基础上,Sun开发出了Java One Studio5,为用户提供了一个更加先进的企业编程环境。在新的Java One Studio5里有一个应用框架,开发者可以利用这些模块快速开发自己在网络服务方面的各种应用程序。0 z$ ^$ u9 e/ O5 q( C9 Q 4、Borland 的JBuilder ( v( S" X* \% Q' v, j 2 A! y9 X+ e8 J& ~1 Z* Z
1 B+ v0 y9 e9 n$ `* } b Jbuilder进入了Java集成开发环境的王国,它满足很多方面的应用,尤其是对于服务器方以及EJB开发者们来说。下面简单介绍一下Jbuilder的特点: ( x) D* u# W* V2 K! ~8 S4 i# ^! I6 K* b' R" l9 B6 T, M& j
1)Jbuilder支持最新的Java技术,包括Applets、JSP/Servlets、JavaBean以及EJB(Enterprise JavaBeans)的应用。8 E. `) k! A& U% Q" H& ^' m A
5 }8 ]& b B5 t8 B% ^0 w! J 2)用户可以自动地生成基于后端数据库表的EJB Java类,Jbuilder同时还简化了EJB的自动部署功能.此外它还支持CORBA,相应的向导程序有助于用户全面地管理IDL(分布应用程序所必需的接口定义语言Inte**ce Definition Language)和控制远程对象。 : z0 k# u9 H6 K: m: Q. o ( c) l" J. Q* e: h6 ~ 3)Jbuilder支持各种应用服务器。Jbuilder与Inprise Application Server紧密集成,同时支持WebLogic Server,支持EJB 1.1和EJB 2.0,可以快速开发J2EE的电子商务应用。. r# s* w1 p! l4 o
3 r5 F3 Y; J6 B* J W 4)Jbuilder能用Servlet和JSP开发和调试动态Web 应用。 2 R4 _, F9 ]! q+ @/ c( \ v' I- y0 m K0 J/ `
5)利用Jbuilder可创建(没有专有代码和标记)纯Java2应用。由于Jbuilder是用纯Java语言编写的,其代码不含任何专属代码和标记,它支持最新的Java标准。 n, v& H0 f( z: N4 O: y/ N+ S# E; N7 Y( I( v- e4 j
6)Jbuilder拥有专业化的图形调试介面,支持远程调试和多线程调试,调试器支持各种JDK版本,包括J2ME/J2SE/J2EE。6 _9 ]" C& W/ Z
3 c' v V( Z3 z8 \0 p9 L4 n
JBuilder环境开发程序方便,它是纯的Java 开发环境,适合企业的J2EE开发;缺点是往往一开始人们难于把握整个程序各部分之间的关系,对机器的硬件要求较高,比较吃内存,这时运行速度显得较慢。' \5 a! \, j# ~! i 5、Oracle 的JDeveloper 0 L1 c. @4 J3 l 2 ]! Q5 P( o, f ^# j2 h
, S5 x* i r3 { b& _+ L C( u Oracle9i JDeveloper(定为9.0版,最新为10g)为构建具有J2EE功能,XML和Web services的复杂的,多层的Java应用程序提供了一个完全集成的开发环境。它为运用Oracle9i数据库和应用服务器的开发人员提供特殊的功能和增强性能,除此以外,它也有资格成为用于多种用途Java开发的一个强大的工具。0 ?/ I' o9 p: g3 O; C$ O5 e, M
, P; m6 ?4 r5 S5 U) p
Oracle9i JDeveloper的主要特点如下: 0 f: `! P" H/ p" o
" z$ d0 D8 Y- T ① 具有UML(Unified Modeling Language,一体化建模语言)建模功能。可以将业务对象及e-business应用模型化。4 }7 B( n6 B( j% {
* K5 P- S3 ~3 [+ V: e! }3 U
② 配备有高速Java调试器(Debuger)、内置Profiling工具、提高代码质量的工具“CodeCoach”等。 # `% f' ~( J5 t# v/ C8 t( K
. {# |6 U: O V
③ 支持SOAP(** Object Access Protocol)“简单对象访问协议”、UDDI(Universal Description, Discovery and Integration)“统一描述、发现和集成协议”、WSDL(Web Services Description Language)“WEB服务描述语言”等Web服务标准。 ( D; ^' d4 [, p; E) z0 A 2 _0 }9 x5 v* B& F/ [1 z3 l JDeveloper 不仅仅是很好的 Java 编程工具,而且是 Oracle Web 服务的延伸,支持 Apache SOAP,以及 9iAS ,可扩充的环境和 XML 和 WSDL 语言紧密相关。Oracle9i Jdeveloper完全利用Java编写,能够与以前的Oracle服务器软件以及其他厂商支持J2EE的应用服务器产品相兼容,而且在设计时着重针对Oracle9i,能够无缝化跨平台之间的应用开发,提供了业界第一个完整的、集成了J2EE和XML的开发环境,允许开发者快速开发可以通过Web、无线设备及语音界面访问的Web服务和交易应用,以往只能通过将传统Java编程技巧与最新模块化方式结合到一个单一集成的开发环境中之后才能完成J2EE应用开发生命周期管理的事实,从根本上得到改变。缺点就是对于初学者来说,较复杂,也比较难。 - C: s, Q/ K0 E9 [6、IBM的Visual Age for Java # T2 M- o. c9 W/ I7 P; o
9 J' U( t+ K9 d6 k8 k9 P
* |& B2 g+ _7 n1 x! N# S Visual Age for Java是一个非常成熟的开发工具,它的特性以于IT开发者和业余的Java编程人员来说都是非常用有用的。它提供对可视化编程的广泛支持,支持利用CICS连接遗传大型机应用,支持EJB的开发应用,支持与Websphere的集成开发,方便的bean创建和良好的快速应用开发(RAD)支持和无文件式的文件处理。 & U* v- M& v4 f! R9 U k3 A0 U; S8 ]5 ~
IBM为建设Web站点所推出的WebSphere Studio Advanced Edition及其包含的VisualAge for Java Professional Edition软件已全面转向以Java为中心,这样,Java开发人员对WebSphere全套工具的感觉或许会好了许多。Studio所提供的工具有:Web站点管理、快速开发 JDBC页向导程序、HTML编辑器和HTML语法检查等。这确实是个不错的HTML站点页面编辑环境。Studio和VisualAge集成度很高,菜单中提供了在两种软件包之间快速移动代码的选项。这就让使用Studio的Web页面设计人员和使用VisualAge的Java程序员可以相互交换文件、协同工作。' g0 ]& U0 \+ s/ t3 y/ g
* a) ^7 T' m0 G: M6 m/ o. r1 y2 P; g; t7 p
Visual Age for Java支持团队开发,内置的代码库可以自动地根据用户做出改动而修改程序代码,这样就可以很方便地将目前代码和早期版本做出比较。与Visual Age紧密结合的Websphere Studio本身并不提供源代码和版本管理的支持,它只是包含了一个内置文件锁定系统,当编辑项目的时候可以防止其他人对这些文件的错误修改,软件还支持诸如Microsoft Visual SourceSafe这样的第三方源代码控制系统。Visual Age for Java完全面向对象的程序设计思想使得开发程序非常快速、高效。你可以不编写任何代码就可以设计出一个典型的应用程序框架。Visual Age for Java作为IBM电子商务解决方案其中产品之一,可以无缝地与其他IBM产品,如WebSphere、DB2融合, 迅速完成从设计、开发到部署应用的整个过程。 1 p2 N1 L3 m8 t8 ^ $ z; s' W# r$ `4 T Visual Age for Java独特的管理文件方式使其集成外部工具非常困难,你无法让Visual Age for Java与其他工具一起联合开发应用。 / A* ?: {, V5 i7 A: w& z7、BEA 的 WebLogic Workshop - ^" C4 P3 r1 `2 r$ `* }. c* j % N( n |5 ~' i/ P. o8 L/ N+ D
' S8 B9 X7 {+ U BEA WebLogic Workshop是一个统一、简化、可扩展的开发环境,使所有的开发人员都能在 BEA WebLogic Enterprise Platform之上构建基于标准的企业级应用,从而提高了开发部门的生产力水平,加快了价值的实现。 2 Z, x& f! V- _# q5 d0 ]$ {6 r- N* a" L% i8 H
WebLogic Workshop除了提供便捷的Web服务之外,它能够用于创建更多种类的应用。作为整个BEA WebLogic Platform的开发环境。不管是创建门户应用、编写工作流、还是创建Web应用,Workshop 8.1都可以帮助开发人员更快更好地完成。 Q/ D. J1 K& h$ m' Y& A* @ r
3 z+ O }* m" H0 Q# ~8 w4 H% ~5 i
WebLogic Workshop的主要特点如下:3 R, v7 ^! O* J' ` X% S) G
( I# k; b( s" W* z
① 使 J2EE 开发切实可行,提高开发效率& w; k! C7 [: r# F
- Q9 d! B# D) [! ^ L& Z
BEA WebLogic Workshop 使开发人员远离 J2EE 内在的复杂性,集中精力专注业务逻辑,无须操心单调乏味的基础结构代码。这种创新意味着,已被企业验证的 J2EE 的强大功能,最终被大多数不熟悉 Java 和 J2EE 的应用开发人员所掌握,从而使 IT 部门的工作效率提高一个数量级。 # [2 A/ C$ y" Z/ [" v7 N2 V/ ]
: W. { B% m4 b
可视化设计器以及直观的概念,如事件、属性和控件等,实现了基于事件的开发。Workshop 简化的程序设计模型,使开发人员不必掌握复杂的 J2EE API 和面向对象的程序设计原理。所有开发人员,包括 J2EE 专家和具有可视化和过程化语言技能的应用开发人员在内,都可以共同工作在 BEA WebLogic Enterprise Platform 之上。Workshop 的可视化开发环境,创建带有代码注释的标准 Java 文件,用来说明由运行时框架实施的企业级需求。J2EE 和其他高级开发人员,借助功能强大的代码编辑功能,可以访问 Java 源代码,从而弥补了可视化设计器的不足。 U' ?' ?/ x$ o/ {+ x! _
7 {. `" Y1 y. c* G0 c ② 构建企业级应用9 ]5 j4 l! w9 l" q" o- c7 G2 F
* _3 C Y% g" s9 {, O w9 M5 K$ p 通过在可伸缩、安全可靠的企业级架构上实施各种应用,BEA WebLogic Workshop 大大降低了开发风险。而且,所有应用的创建都使用标准的 J2EE 组件,既保护了您的技术投资,又保持了最大的灵活性。 , W: U x; n ~+ @BEA WebLogic Workshop 运行框架,是统一整个架构的汇聚层,使单一、简化的程序设计模型扩展到所有的 BEA WebLogic Enterprise Platform 应用类型。通过解释设计时创建的注释代码,运行时框架可以实现必要的 J2EE 组件,并且提取出与 J2EE 应用开发有关的所有底层细节。 * {* l4 z: q3 m6 c1 t" q: Q1 K# Z9 }2 {8 e* N" E3 q J5 R" h c6 i
③ 降低 IT 复杂性- _; C8 b3 Y, s- z0 M+ l3 W
- L, |4 ~) }# z3 ?2 ?( b6 h1 G
BEA WebLogic Workshop 提供各种 Java 控件,使得与 IT 资源的连接更轻而易举。另外,在构建任何 BEA WebLogic Platform 的应用中,Java 控件不仅可扩展而且完全相同。这种强大、有效的方法能够:降低 IT 技术的复杂性,优化信息的可用性,推动包含"最佳业务方案"的可重用服务的开发,使开发人员能以更低的成本、更短的时间实现更大的产出。 ! s+ s o& A8 F; ]% v6 l9 O0 J" s7 K4 {0 @
利用 BEA WebLogic Workshop,任何开发人员都能以最大的生产效率,构建各种 Web 服务、Web 应用、门户和集成项目。BEA WebLogic Workshop是BEA的产品战略核心,它帮助客户接触和利用面向服务架构(SOA)的强大功能。BEA Weblogic Workshop 8.1极大简化了当前实际企业集成环境中企业级应用和服务的构建,并成为全面支持关键企业级应用(如异步、真正松耦合和粗粒度消息传送等)的自然选择。它的缺点就是过于复杂,对于初学者来说,理解起来较为困难。2 ]% |% N4 V2 [: G 8、WebGain 的Visual Cafe for Java 7 |7 P$ g- }3 T# Z) v6 H* ]0 p
" ~* v9 R& D: s. n! E& M9 C0 B
! E0 Q! H% x! p Eclipse框架的这种灵活性来源于其扩展点。它们是在XML中定义的已知接口,并充当插件的耦合点。扩展点的范围包括从用在常规表述过滤器中的简单字符串,到一个Java类的描述。任何Eclipse插件定义的扩展点都能够被其它插件使用,反之,任何Eclipse插件也可以遵从其它插件定义的扩展点。除了解由扩展点定义的接口外,插件不知道它们通过扩展点提供的服务将如何被使用。 4 @3 F9 O* n/ A7 P
3 w$ K; M! }0 k y 利用Eclipse,我们可以将高级设计(也许是采用UML)与低级开发工具(如应用调试器等)结合在一起。如果这些互相补充的独立工具采用Eclipse扩展点彼此连接,那么当我们用调试器逐一检查应用时,UML对话框可以突出显示我们正在关注的器件。事实上,由于Eclipse并不了解开发语言,所以无论Java语言调试器、C/C++调试器还是汇编调试器都是有效的,并可以在相同的框架内同时瞄准不同的进程或节点。 ( t6 U$ S6 K% d {0 E- |9 g