2011-06-06 78 views
7

我的問題是基於以下問題:Choosing a Java Web Framework now? ..僅在一年後。選擇一個java web框架2011

我的問題的原因是一年內發生了很多事情,遊戲框架已經成熟等等,我想知道今天最熱的東西是什麼。今天的框架有什麼優點和缺點?

+1

-1我猜你的參考問題是爲歷史目的而保持開放的,但不應該作爲一個很好的問題的例子。這裏沒有正確的答案,這只是開始討論。我會投票結束(如果我有足夠的代表)。 – 2011-06-06 19:12:53

+0

投票轉移到程序員stackexchange – canadiancreed 2011-09-03 03:48:38

回答

3

專注於Java框架,這取決於你的目標(如IT的一切!)

  • 在產品的大公司,你要麼使用Java EE或標準的Struts /春/休眠去。它們是經過驗證的堆棧,該環境中的可伸縮性需求可以通過這些堆棧來滿足,並且有狀態可以在該環境中相關。此外,他們使用應用程序(Play,Scala,那是什麼?)應用了新版本的「沒有人因爲購買IBM而被解僱」(012)。喜歡。舉起,播放,不管。

  • 對於一家初創公司,我會推薦使用Lift或Play。我個人更喜歡Play,但是YMMV。兩者都是簡化開發並快速轉換的敏捷框架。完美匹配的創業公司。差異(無狀態和有狀態等)是你在決定之前應該檢查的。

關於Scala vs Java,這又取決於它。除非你很幸運,否則你將不被允許在公司環境中使用Scala(儘管如此,它們正在慢慢傳播)。對於你自己的項目,這並不重要。對於初創公司,選擇你最瞭解的公司。我知道,學習是有吸引力的,但是如果你有6個月的Scala愛好者經驗和5年商業Java經驗,那麼在Scala創建項目的時間和痛苦並不值得。

+0

爲什麼公司企業不使用Play或Scala這些有效的選項? – Raynos 2011-06-07 11:00:26

+0

@Raynos大多數公司(特別是諮詢公司)傾向於使用「經過驗證和普及的」技術,因爲它更容易向客戶銷售(他們在知識曲線之後),而且更容易找到知識便宜的員工(最先進的是通常更昂貴)。至少在Java世界:) – 2011-06-09 14:41:19

+0

雖然我喜歡在技術浪潮的早期階段。這更有趣。我可以向客戶輕鬆銷售Play和Scala。 – Raynos 2011-06-09 14:54:38

3

JSP是一個遺留技術,JSF就像一個恐龍,它是有狀態和基於組件的。如果您想開發可以擴展數十,數百,數千個節點的高流量分佈式應用程序,則更傾向於使用基於組件的有狀態框架。無狀態框架可以輕鬆擴展。 Wicket,Tapestry和Lift也是有狀態的。有Click框架,但它沒有創新和速度。 Struts很好,但它現在是一箇舊框架,Spring mvc 3比struts更好。是的,Spring mvc很好,但現在有更好的Play! Spring很快就變得像Java EE一樣,另一方面,Play是一個非常簡單的框架,擁有一個偉大的社區和文檔。未來是光明的。它有很多核心功能(還有它非常輕巧),還有很多模塊可供玩耍(比如rails gems)。在上一個版本中,它獲得了websockets,depenency management,db版本管理,更好的scala模塊,...更多

特別是,新的scala模板變得非常簡單,類型安全,具有最先進的語法(如asp。淨mvc剃鬚刀)與一個偉大的表現,你可以看到在測試http://www.jtict.com/blog/rails-wicket-grails-play-lift-jsp/(玩在測試中是最快的)

你可以同時使用java和scala玩,但在我看來scala是比java更好的語言,與新一代功能(Java不能)競爭C#,Ruby,Python,所以我更喜歡scala。 Lift也是一個Scala框架,但它比玩遊戲和高度有狀態更復雜。

此外,您的平臺和語言選擇是偉大的。作爲一名經驗豐富的.net開發人員,我不推薦asp.net webforms或asp.net mvc,他們總是傾向於使用平臺獨立的開源技術。 Python/Django和Ruby/Rails速度慢並且不安全。 PHP和Perl是傳統技術。今天最好的平臺是jvm(.net只適用於窗口和單人死亡的單聲道),所以你走在正確的道路上。

+1

請通過拼寫檢查器。並備份「上個月死亡單聲道」 – Raynos 2011-06-06 18:53:19

+0

謝謝:)固定了一下 – sirmak 2011-06-06 19:05:34

+0

在徹底讀了它之後,它太過於自以爲是。 ASP.NET MVC是堅實的。 Python,Ruby和PHP都很好。 Perl CGI腳本是遺留的,但是有一些現代(不太流行)的perl框架。我同意Play是穩定的,但它不是「最好的」。 – Raynos 2011-06-06 19:16:37