當前位置:
首頁 > 知識 > 2017年 7 個最佳的 java 框架

2017年 7 個最佳的 java 框架

毫無疑問,Java是目前最需要的編程語言之一。在這裡,我們已經挖掘了一些關於框架趨勢的有用信息,以減輕全球軟體開發人員的日常工作。

根據RebelLabs,也是在線Java用戶組(虛擬JUG)的媒體盟友所進行的調查,2017年最佳java框架的陣容如下:

我們並不希望你只看比較圖,而跳過對每個框架的概述,因為裡面會對框架進行分析和對比,來幫助你根據你的項目選擇完美的工具。

1.Spring MVC

姜還是老的辣,Spring MVC自從它第一次發布已經有了十多年的歷史,但仍然處於領先地位。在為了擁抱完整的MVC框架的擴展之後,Spring繼續保持發展變化,並轉變成為了面向Internet的應用程序的全面Java框架,為軟體工程師在Web應用程序開發和應用程序配置以及安全項目上提供了強大的工具包。作為程序員中最受歡迎的框架之一,Spring有一個得到很好開發的生態系統,提供各種附加選項:REST API或SOAP Web服務,安全(身份驗證和授權,加密)等。選擇它還有一個好處是很多大公司里的開發同行也選擇用這個特定的Java框架。因此,他們可以為你提供你所需的查詢幫助。

優點和缺點

沒有理由的,Spring在圖表的頂部沒有嵌套。它是最好和最知名的Java框架之一,因為:

通過使用POJO簡化測試數據的注入。

增強的模塊化,導致更好的代碼可讀性。

不同模塊之間的鬆散耦合。

依賴注入(DI)靈活使用。

雖然並非框架直接的一個缺點,忽略參考文檔數量,Spring MVC可能並非Java新手開發人員可以輕易掌握,它的學習曲線過於陡峭。因此,處理這個Java框架的某些部分可能會有點難,如果你碰上一個糟糕的參考文檔的話。你可能會發現不同版本之間的信息有所不同。

順便說一句,由於我們工程師的偉大經驗,Spring MVC是我們最喜歡的框架之一。

2. Struts 2

為了更詳細地闡述為現代軟體工程師廣泛使用的現有Java框架,我們決定引用Apache的Struts 1(Struts 2)的後續版本。這個Java框架對於那些構建當代Java EE Webapp的工程師來說真是一個不錯的發現。Apache Software Foundation為開發人員提供了一個廣泛的工具,用於創建面向企業的web應用程序,優化了從開始到最終點的開發過程以及後期維護。如果你正在對高負載系統(如廣播門戶)愁眉不展,那麼這是一個正確的選擇。

由於Struts 2實現好了的Action類(普通POJO對象),測試編寫代碼所需的工作量減輕了。使用框架的API,耦合變得更容易,這也有助於調整攔截器。

優點和缺點

當你問自己為什麼應該考慮Struts 2的時候,那就想想不必重寫或實現Action類的奢侈——它已經就位了! IT工程師需要為多個操作而創建重複設置的代碼不再是一個問題,因為攔截器會處理它。

然而,你可能會因為這個Java框架的龐大體型而望而卻步:一些程序員發現它不夠靈活。

3.Hibernate

雖然也不是在RebelLabs的列表中,但在討論最好的Java框架時,Hibernate值得一提。這種映射Java框架通過替換持久化的DB訪問高級對象處理函數來破解對象關係阻抗不匹配問題。隨著每個企業應用程序開始都有這樣的問題,Hibernate配備了一個偉大的功能套件,來幫助後端開發人員微調數據訪問層。這是一個高級的ORM框架,允許你對Java對象(實體)執行資料庫操作。它是一個持久性的概念——利用Hibernate緩存將數據從Java環境持久化到資料庫。

優點和缺點

Hibernate允許你使用你寫的代碼中的微小變化與任何資料庫通信,彌合對象和關係詞之間的差距。最重要的是:

Oracle,Db2或MySQL,Hibernate是獨立於DB的。

通過相似查詢的緩存機制到bug資料庫。

N + 1或延遲載入支持。

雖然它有這些明顯的優勢,但Hibernate不允許多個插入,不允許JDBC可以做的一些查詢。此外,對於具有較少表格的小規模項目,此Java框架可能不是一個好的選擇。

4.JSF

作為Java EE的一部分,Oracle支持JavaServer Faces。雖然不是快速Java開發的最好框架,但它很容易使用,因為Oracle提供了偉大的文檔。此外,在你使用Java EE環境之時,你會發現JSF沒有外部依賴,反而提供了大量功能。豐富的庫和工具(包括一個方便創建用戶界面的工具集)使之成為了一個魔術棒,來支持你面對無論看起來有多複雜的應用程序。

優點和缺點

如上所述,JSF是Java EE的一個組成部分。因此,開發人員利用IDE軟體套件以及來自行業領先供應商最好水平的支持。

另一方面,JavaServer Faces太龐大,以致於對於那些在web開發基礎上的經驗和技能不夠堅固的人而言,非常難以理解。

想要系統學習Java知識 加入學習群一四四九零一零七六 可以免費學習java還有大量學習乾貨哦

5.Vaadin

使用GWT渲染結束網頁,Vaadin成為了現代開發人員在創建業務應用程序時選擇的流行框架之一。利用一個眾所周知的基於組件的方法,Vaadin通過將做的改變傳達給瀏覽器來減輕了開發人員的負擔。一個廣泛的UI組件,以及各種小部件和控制項,允許程序員隨時構建酷酷的應用程序。

優點和缺點

在Java,HTML或兩者中構建布局,Vaadin提供了使用或MVC或MVP綁定數據的機會。拖放支持以及其他突出的功能簡化了Java應用程序單頁UI的創建。

在缺點方面,移動應用程序的UI遲緩可能是一個問題,因為Vaadin將每個事件發送回伺服器。

6. Google Web Toolkit

GWT是另一個免費的Java框架,允許程序員創建和優化複雜的基於Web的應用程序。 GWT軟體開發套件提供核心Java API和小部件,用於構建之後編譯為JavaScript的應用程序。

優點和缺點

使用Google Web Toolkit,你可以獲得單個代碼庫(Java中的瀏覽器端和伺服器端編程),從而簡化開發和調試過程。與其他技術的簡單集成允許程序員在Web頁面中嵌入GWT小部件。自定義窗口小部件功能是另一個可以在GWT幫助下創建的好處。

然而,如果你是一個Web設計師,GWT可能並非Java框架的最佳選擇;它對那些純HTML和後期動態內容布局並不和藹可親。

7.Grails

這個特殊的Web框架因為其固執的API,合理的默認值,以及約定優於配置的範例,使之被當作是一個提高工程師生產力的動態工具。無縫的Java集成使得這個特殊的框架成為了全世界大量程序員的最佳選擇。一系列強大的功能,例如Spring提供的依賴注入和各種插件,提供了創建現代基於Web的應用程序所需的一切。

優點和缺點

快速設置一個新的項目和支架為程序員節省了大量寶貴的時間。一個巨大的庫提供了超過900種不同的易於安裝的插件。儘管Grails是一個全棧開發的Java框架,但它還有一個Grails的對象關係映射覆蓋的龐大功能,使其成為了一個相對笨重的軟體。

那麼選擇什麼呢?

在2017年各種流行的Java框架中選擇合適的概念可能是一個麻煩的任務,因為每個公司在選擇獲勝方法時都會堅持他們自己基於web和移動app創建的思想。無論你使用的是什麼確切的框架,謹記許可證,易於安裝,網路的活躍程度,以及手邊的文檔等。根據項目類型,有時,明智的做法是將所有工具放在一起挑選,但很多時候,「減肥」和轉向一個輕量級的概念更有意義。

想要系統學習Java知識 加入學習群一四四九零一零七六 可以免費學習java還有大量學習乾貨哦


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT技術java交流 的精彩文章:

2017年JAVA開發工程師項目面試名企重點攻略詳解
JavaScript 新手的踩坑日記
初學Web前端過程中,必須避開這5個大坑!

TAG:IT技術java交流 |

您可能感興趣

2017年iPhone銷量低於2016年
2017年度最佳設計項目Part1-5
2017年papi醬賺了1.55億元,完成了1.5個小目標
Gartner:2017年全球半導體收入增長21.6%,突破4000億美元大關
2017年是Steam最賺錢的一年 狂收43億美元
adidas 2017 年銷售額大增 20% 至 $240 億美元
2017年Steam總盈利43億美元
Context:2017年全球賣了50萬台3D印表機,2030年有望賣掉1億台
2017年NAND Flash存儲密度1620億GB當量,2018年將增加30%
年終總結part 1:2017年的我是豬
iPrice:2017年菲律賓電商年終回顧,啟發2018年
Gucci 2017年網站訪問量高居奢侈品牌第一,是2016年的2.5倍!
2017年度巨獻:6款Radeon RX 580顯卡橫評
2017年Q4 iPhone在中國增長10%
2017年Steam收入43億美元,新遊戲7000款:PUBG達6億美元
2017年第四季度蘋果公司賣出800萬塊Apple Watch,可能贏了整個瑞士鐘錶業
Gartner:2017年全球半導體市場首超4000億美元
揭曉!突破50樣的「我的2017年度美妝」-Part 1
2017年steam賺了43億美金,為最賺錢一年
2018/2017年款iPad以及10.5英寸iPad Pro續航測試