您所在的位置:IT专家堂 > 开发 > Eclipse,NetBeans及IntelliJ—Java IDE大战之IntelliJ IDEA篇(1)

Eclipse,NetBeans及IntelliJ—Java IDE大战之IntelliJ IDEA篇(1)

2007-05-23 16:44 Jacek Furmankiewicz/朱先忠编译 51CTO.com 我要评论(0) 字号:T | T
一键收藏,随时查看,分享好友!

本系列文章将对Java开发领域三个著名的IDE—NetBeans,Eclipse/MyEclipse和IntelliJ IDEA的最新版本进行相对全面的比较。以后,如果在四大领域—Swing,JSP/Struts,JavaServer Faces和J2EE/EJB 3.0—从事开发时,你可以在选择这些工具时有所参考。

AD:

【51CTO.com独家特稿】Jacek Furmankiewicz是加拿大Compuware公司一位资深的开发者/设计者。他具有12年的专业IT经验,范围涉及UNIX,PowerBuilder,C#/Microsoft .NET,Java,PHP,还有Microsoft SQL Server和Oracle。

一、IntelliJ IDEA 6.0.4

供应商  JetBrains
网站 www.jetbrains.com/idea
价格  $499.00(加上$299.00的升级费)

安装

在Windows平台上,IDEA提供了一个常规的EXE安装程序;而在Linux平台上,其安装只包括一个TAR.GZ文件。一旦解压完所有内容,你必须手工地切换到“bin”子目录下,并且执行“./idea.sh”。如果你没有正确建立$JDK_HOME(最好在你的.bashrc文件下,如下所示)变量的话,将会出现失败:

JDK_HOME=/home/jacek/Dev/Java/JDK/jdk1.6.0_01
export JDK_HOME
JAVA_HOME=/home/jacek/Dev/Java/JDK/jdk1.6.0_01
export JAVA_HOME
export path=$JAVA_HOME/bin:$path

遗憾的是,JetBrains并没有对于任何主流的Linux发布提供一个标准的.deb或RPM文件,致使安装无法与桌面良好地集成(例如,不支持桌面快捷方式或创建K菜单入口)。更糟糕的是,从Konqueror文件管理器下双击“bin/idea.sh”文件也无法工作(它将返回一个关于JAVA_HOME还没有建立的错误,尽管实际上已经正确建立它了)。看起来,唯一可行的办法是打开命令行并手工执行“./idea.sh”。总之,IDEA在Linux平台上的安装体验还需要进一步的简化。在本文被测试的三个IDE中,IDEA在安装方面提供的功能是最弱的。

总体特征

就象NetBeans一样,IDEA中也提供了一种很灵活的布局,对于各种配置都提供了相应的停靠/固定/浮动面板。然而,这看起来尚不如NetBeans窗口系统那么平滑和可配置。

然而,这只是对于杰出的IDEA编辑器的一个小小的抱怨—一直被认为是它的杰作之一。其实,IDEA编辑器速度极快,并提供复杂的上下文敏感的颜色加亮、提示和建议弹出框—更不必提给人印象极深的大量的重构选项。IDEA编辑器简直就是任何顶级编程者的梦想。使用它的时间越多,我就会从中发现越多的提高开发效率的编程技巧。我肯定,在这么有限的时间内我根本不可能了解它所有的功能。下图4中的示例展示了一种IDEA编辑器及其高级的颜色/语法高亮功能。

图4:应用中的IDEA编辑器

Swing开发

另一方面,IDEA也提供一个较强有力的GUI编辑器。但是,比起NetBeans Matisse,还是略微逊色一些,但是它确属GUI编辑器中的亚军。特别是,它对于JGoodies表单(无可争议地成为比GroupLayout优秀得多的布局管理器)的支持使它远远跑在了那些仍然依赖于GridBagLayout技术的GUI编辑器的前面(例如Eclipse的Visual Editor)。

有趣的是,IDEA以一个单独的“.form”文件形式保存相应的UI布局(类似NetBeans),但是默认情况下,它并没有生成相应的Swing代码—它仅在编译期间经由一个专利性GUI编译器(该编译器还可以作为一个单独的Ant任务进行打包)生成。如果你比较喜欢把该IDE生成的代码直接放到你的.java文件中,那么,你必须经由一个选项来启动这一功能(我认为这是更好些的方法,因为我不太喜欢把我所有的UI代码都隐藏起来而仅在运行一个IDE特定的代码生成机制后才变得可用)。

JSP/Struts开发

IDEA对于Struts的支持是十分成功的。这方面支持的一个良好的例子是,它甚至支持下载所有你需要的Struts库!它不仅提供自动地建立所有的配置文件(包括Tiles和Validator),而且还提供了一个称为Struts Assistant的专用Struts面板,用于针对所有的Struts配置文件—包括tiles-config.xml和validation.xml—提供图形化的编辑器和生产向导。

IDEA没有为JSP/HTML页面提供可视化编辑器,但是常规的IDEA JSP/HTML编辑器已经比较优秀了—尽管没有一个可视化组件。对于嵌入式JavaScript(并提供完整的实现代码!)的支持对于操作大量DHTML或AJAX代码的任何开发者都是一个极大的福音。另一个值得注意的优点是,JavaScript编辑器的发行还支持浏览器特定的元素(IE,Mozilla和Opera)以及流行的AJAX框架(例如Dojo,Bindows和Prototype)。(关于IDEA对Struts提供支持的例子请参考图5和图6。)

图5:建立IDEA Struts Web应用程序
图6:IDEA Struts Assistant

对于顶级的Web 2.0开发,IDEA为GWT(Google Web Toolkit)相关开发提供了全面的支持—把GWT作为它的一个核心特征。我发现这会给人留下极为深刻的印象,特别是当考虑到GWT是如此新的AJAX开发框架时。

内容导航

分享到:

网友评论TOP5

查看所有评论(

提交评论

栏目热门

更多>>

  • 头条 使用检查约束验证SQL Server中的数据
  • 构建应用程序最关键的目标之一是确保所有进入数据库的数据都要符合你的业务规则,数据校验是应用程序的关键部分,确保你的数据满足业务分析师制定的需求。本文将给大家介绍如何使用检查约束验证SQL Server中的数据。
  1. 对话职业经理人阿朱:程序员转型期的职业选择
  2. 从检测到防护:全面打造网站安全

热点职位

更多>>

热点专题

更多>>

读书

Java编程思想 第4版
本书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研

51CTO旗下网站

领先的IT技术网站 51CTO 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 51CTO学院