Eclipse 是一个免费的、正日益流行起来的 Java 集成开发环境,最新版本的 Eclipse 中提供了很多特性,这些特性使它不但能与其他免费的 IDE 竞争,而且,即使是 IntelliJ IDEA 之类的专业商业软件,Eclipse 也能与之竞争。本文将 Eclipse 与 IDEA 进行了简单比较,为那些希望转换到 Eclipse 或者只是想体验一下 Eclipse 的程序员提供一份指南,让他们了解 Eclipse 提供了哪些令人激动的特性。
Eclipse 与 IDEA 的比较
Eclipse 是一个雄心勃勃的项目。具体地说,它不仅仅是一个 Java IDE 工具,而且更是一种可扩充的开发平台,旨在能够支持任何一种编程语言。然而,其参考实现 —— Java Development Toolkit (JDT) —— 只是一个 Java IDE,大部分人(尤其是 Java 程序员)谈及 Eclipse 时,通常也是这样认为。尽管您还为 Java 开发和 JDT 担心,但 Eclipse 开放的、可扩充的特性足以促进 Eclipse 和 Eclipse 社区的大力发展。
Eclipse 3.0 和 IntelliJ IDEA 4 有很多重要的区别,而其中最显著的区别就是价格:要想使用 IDEA, 您必须付费才能获得许可证,而 Eclipse 却是免费的。这一点究竟有多重要取决于您(或您的公司)的预算,不过很多专业的开发人员发现,IDEA 具有他们需要的所有特性,而且价格也很有吸引力。尽管如此,虽然 Eclipse 不具备 IDEA 的所有特性,但是围绕 Eclipse 进行开发的社区非常活跃,他们已经以第三方插件的形式完善地提供了 Eclipse 所缺少的特性。
比价格和有多少特性更为重要的是如何使用 IDE 进行工作。IDE 对您有多大贡献取决于许多因素,除了所提供的特性之外,这些因素还包括整体设计、稳定性和性能。在本文中,我们主要考虑 Eclipse 3.0 JDT 的基本特性,并将这些特性与 IDEA 中的可用特性进行比较。
特性
在编辑、运行和调试 Java 代码方面,IDEA 和 Eclipse 的基本特性基本相同,不过有时操作方式可能稍有不同。除了这些基本的编程特性之外,Eclipse 和 IDEA 都提供了对更高级的 Java 开发工具的支持,例如 Ant、CVS、JUnit 和重构。(请参阅 参考资料中介绍 Eclipse 的重构(refactor)特性的一篇文章。) 通常,从另外一种 IDE 工具迁移到 Eclipse 上时,最困难的事情是学习如何在新环境中实现原来环境中的功能 —— 由于 Eclise 提供了如此丰富的特性,查找某个特性通常比较困难。幸运的是,在 Eclipse 的在线文档中,有非常完整而且易用的帮助系统。
直至最近,与 Eclipse 相比,IDEA 最主要的优点之一就是它有一个集成的 GUI 编辑器。但现在这种情况正在发生变化:Eclipse 引入了 Visual Editor。Eclipse 的 GUI 编辑器是一个单独的组件,但是,相对于 IDEA 的编辑器来说,它有一个非常重要的优点:其代码和图形视图之间可以进行非常流畅的转换(在一种模式下的变化几乎立即就可以反映到另外一种模式中),不需要其他元数据或文件。
Eclipse 的 Visual Editor (VE) release 0.5 支持 AWT/Swing,现在,也可以在 Eclipse 2.1.x. 中使用该版本。用于 Eclipse 3.0 的版本 VE 1.0 即将发布。VE 1.0 将被用作一个独立的软件,可以从 Eclipse 的网站上下载它,它不但支持 AWT/Swing,而且支持 SWT。有关 VE 的更多信息,请参阅后面 参考资料中列出的文章“Building GUIs with the Eclipse Visual Editor”。
IDEA 的另外一个优点是它集成了 Web 开发的支持。然而,即使您需要这种功能,也依然可以使用 Eclipse。有几个第三方的插件可以为 Eclipse 添加这种功能,比如 Lomboz 和 Sysdeo Tomcat 插件。请参阅 参考资料中的文章,它向您展示了如何下载、安装和使用这些插件以及其他第三方插件。
整体设计和易于使用性
Eclipse 的新用户对 Eclipse 的普遍抱怨就是它难以使用。这在很大程度上是因为 Eclipse 采用了一种独特的方式来组织自己的用户界面。具体地说,Eclipse 引入了 透视图的概念,提供为执行特定任务而设计的环境,例如编码、调试、使用源代码控制系统等。经过一些引导和实践之后(这也正是本文的目的),大部分用户会发现,这个概念非常清晰,而且功能十分强大。
Eclipse 用户界面的另外一个优点是,它广泛采用了向导 —— 即一系列对话框,能够引导您一步步执行特定任务的步骤,比如新建项目或类,连接到 CVS 仓库等。当然,IDEA 也有向导,但是 Eclipse 的向导十分完整,提供了更多可能用到的选项。
稳定性和性能
从理论上来讲,Eclipse 在性能方面应该更具优势,因为它使用的是 SWT,SWT 使用了专用的构件 —— 操作系统的 UI 元素;而 IDEA 使用的是 Swing/AWT。然而,从实际情况来看,IntelliJ 在实现 IDEA 的用户界面方面做了很多杰出的工作,在一台功能强大的机器上,二者性能间的差距是可以忽略的。同样,Eclipse 和 IDEA 都非常稳定,用户基本上不会碰到什么问题。
证据源于实践
最后,如果您想评估一下 Eclipse 是否适合您的开发,就需要将其安装到一个测试硬盘中,亲身体验一下。这是评价 Eclipse 易用性以及它是否适合您的工作风格的惟一方式。下一节将简要地介绍一下 Eclipse 的使用。如果您已经下载并安装了 Eclipse,那么请继续阅读本文。