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,那麼請繼續閱讀本文。