2008-09-09 180 views
17

我正在設計和構建桌面應用程序。我正在考慮使用eclipse或netbeans作爲這個應用程序的基礎。但是,我從來沒有建立在這些平臺上。我個人傾向於使用netbeans,因爲它接近這個平臺是一個經濟學習曲線。但是,我想問一些實際構建在這些平臺上的人,而這些平臺更容易使用?Java桌面應用程序框架

我的easer個人的定義如下:

  • 容易上手

  • 一致性和邏輯API

  • 良好的文檔

  • 易於構建和部署

非常感謝,

喬希

回答

6

我不能說足夠了Eclipse RCP平臺。我會推薦它用於任何Java桌面應用程序開發。

它是免費的,有很好的教程,並且允許跨平臺開發使用本地操作系統窗口工具包的豐富桌面應用程序,這意味着您的應用程序在任何平臺上看起來都是原生的。它還有一個乾淨的API,可以保持你的方式,並且可以在任何平臺上部署一塊蛋糕。

如果你有興趣看看這本書:http://www.amazon.com/Eclipse-Rich-Client-Platform-Applications/dp/0321334612

1

我已經使用Eclipse作爲一個框架的基礎,但它大多隻是用SWT--我們並沒有真正使用多少RCP的。

這真的取決於你在寫什麼,但是從我從使用Eclipse瞭解到它是真的只適合寫了涉及您的使用各種視圖(就像編輯代碼)編輯數據的應用程序。

任何更隨意,除可以使你開始推框架它不是設計一個方向,造成巨大的失敗。

1

你會使用Swing來開發應用程序,因爲任何其他的窗口框架是有用的,只有如果你有一個以前的知識或適當的背景。

您可以依靠http://www.javadocking.com/簡化您的應用程序。

如果您的應用程序要求高度關注用戶界面,也許您可​​以查看另一個方向,如Adobe Air。

2
  • 使用方便:我有經驗的Eclipse開發和我不得不說這不是很容易理解其發展模式。對於基本的東西來說,它有一些簡單易用的嚮導,但對於更復雜的事情來說,這很困難。我不知道Netbeans,但我聽說它更容易。
  • 一致的API:我認爲Eclipse在這方面獲勝。它運行在OSGI上(雖然帶來了一些複雜性),並且擁有幾乎所有的插件擴展。它似乎是插件開發的首選平臺,所以我可以認爲它是可靠的。
  • 文檔:Eclipse贏得了勝利。 eclipse站點的幫助非常好,郵件列表中有很多用戶問題。
1

我已經做了兩個一點點工作,但僅限於相對簡單的應用。兩者似乎都具有大致相同的能力。我個人更喜歡Netbeans平臺,因爲它對我更有意義。

您還應該考慮Swing應用程序框架JSR-296。它提供了構建Swing應用程序,管理應用程序資源,狀態等的基本框架,但沒有Netbeans和Eclipse那麼多「包袱」。 Netbeans IDE有許多用於在SAF上構建應用程序的工具。有關更多信息,請參閱。

不知道更多關於您的應用程序,很難指出你在兩個平臺的適當優勢/弱點。

1

我有一個類似的任務,我也在考慮不同的框架。我有一些Eclipse的經驗(約4個月開發RCP),現在Netbeans(玩了幾天)。恕我直言,這些框架太複雜了。您最終只能調試到特定於Eclipse的插件加載器,試圖弄清楚爲什麼會遇到ClassNotFoundException或NullPointer。與NetBeans相同的故事:只要按照教程,某處某處可以讀出xml配置文件並從中創建UI,很酷。當然,你不能使用其他IDE來開發和基於Eclipse的RCP,NB也非常嫉妒它的用法(除非你像我一樣做一些黑客)。 我所缺乏的是一種清晰的方式來調試我的線程從主執行到執行的操作。相反,我總是被告知我必須做什麼來避免例外。因此,每當我試圖拉新東西時,我都必須保持手指交叉。它從來沒有第一次。 現在我想到了我需要的功能,並且尋找了一些旨在實現諸如插件管理等特定功能的小型項目。還有很多。只需編譯一份您需要的功能列表,並將其集成到您的項目中即可添加更小的框架。這也是有道理的,因爲你的項目最終會消耗更少的RAM。

0

我會使用eclipse RCP,當你真的需要一個平臺建在上面,而不是像swing或swt那樣的「widgetery」。 RCP堅如磐石,一致性強,模塊化且非常靈活。一旦你掌握了它,你會得到巨大的好處。作爲一個平臺,它給你最常用的東西 - 首選項,配置,自動更新,佈局管理,品牌和類似的東西。你建立一個產品,而不是一個應用程序。但是一開始學習曲線非常陡峭。

另一方面,擺動不是一個平臺,你會通過編寫你自己的東西,重新發明上面提到的輪子。但是,是的,揮杆學習和開始的速度更快。我認爲它適合壽命更短的小型應用。

1

如果你真的想避免跨平臺維護,那麼使用Swing。這會爲您購買所有平臺。 RCP需要每個平臺的本地庫。

我們與Swing有過良好的經歷。

0

在打開RCP僅用於構建內容之前,請查看http://www.eclipse.org/community/rcp.php上的一些開源應用程序。

+0

請注意,[只有鏈接的答案](http://meta.stackoverflow.com/tags/link-only-answers/info)不鼓勵,所以答案應該是搜索解決方案的終點(與另一個引用的中途停留時間相比,這些引用往往會隨着時間推移而變得過時)。請考慮在此添加獨立的摘要,並將鏈接保留爲參考。 – kleopatra 2013-11-21 16:48:58