2016 年 7 個最佳的 Java 框架

 2023-11-23 阅读 29 评论 0

摘要:在這段時間之中,Java作為在世界上需求最大的編程語言之一是毫無疑問的。在這里,我們收集了一下關于比較流行的框架,以方便廣大軟件開發者的日常所需。 根據RebelLabs進行的一項調查顯示,在線媒體盟友的Java用戶組(Virtual JUG),2016年最佳陣容的Java框架

在這段時間之中,Java作為在世界上需求最大的編程語言之一是毫無疑問的。在這里,我們收集了一下關于比較流行的框架,以方便廣大軟件開發者的日常所需。

根據RebelLabs進行的一項調查顯示,在線媒體盟友的Java用戶組(Virtual JUG),2016年最佳陣容的Java框架如下:

Java Frameworks Popularity

圖片來源: RebelLabs for Zero TurnAround Inc.

我們不會強迫讀者基于上面的表格而過早的得出結論,接下來我們會給你展示每一個框架的基本內容,讓你分析和對比差異,最終選擇最佳的框架匹配根據您的項目。

1. Spring MVC

spring1

一句話,經久耐用。自SpringMVC第一次發布的這十多年以來,它仍然占據著技術制高點。在SpringMVC不斷完善MVC框架的過程中,Spring也通過不斷變化發展成為了一個面向互聯網的全面的Java框架,提供給軟件工程師一個強大的工具包,用于開發web應用,同時提供安全的應用環境。Spring之所以能夠集程序員們萬千寵愛于一身,是因為其完善的體系,提供多樣化的插件方式,例如:REST接口,SOAP web service,安全保障(授權、認證、加密)等等。選擇SpringMVC的另外一點好處就是,現在很多大公司的開發者都選擇這種典型的Java框架進行開發。所以,也許當你在遇到問題的時候,他們也會向你伸出援手的喲。


優缺點:

Spring位居排行榜首位并不是毫無原因。他之所以是最好的還有最出名的Java框架的原因主要有:

通過POJOs的使用來簡化測試數據測注入

增加模塊性,增強代碼的可讀性

不同模塊之間的松耦合

依賴注入的靈活使用

接下來介紹的是Srping的缺點,盡管這不是Spring框架的直接缺點,忽略成堆的參考文檔,Spring MVC可能不是新手Java開發者可以啃得下來的,使學習曲線太陡。因此,在使用這個Java框架部分內容時,可能會遇到沒有任何的參考文檔。還有您在互聯網上找到的信息可能是不同的版本。順便說一下,由于我們的工程師的豐富經驗,Spring MVC是我們最喜歡的框架之一。


2. Struts 2

struts2

為了更加詳細闡述被現代的軟件開發工程師所廣泛使用的Java框架,我們決定把Apache Struts 1的繼任者Struts 2說上一說。這個Java框架是在工程師構建當代Java EE web應用程序之中可以找到的。Apache軟件基金會已經裝備開發人員提供了一個廣泛的工具用于創建企業級、面向web應用程序,優化開發過程從開始到最后和后上線(post-go-live)維護。如果你的應用運行在高負載系統,如廣播門戶,這個框架是你的不二之選。

由于Struts 2的Action類,我們在測試編寫的代碼花費更少的精力和時間——Action類是純POJO實現的對象。在耦合與框架的API的時候更容易,有助于優化Struts2的過濾器。


優缺點:

當我們在考慮是否是否使用Struts 2,還是考慮是否重寫或者實現Action類花費的時候。這都將不再是問題,這已經都存在這個框架之中。由于過濾器的優化,IT工程師需要為創建幾個Action類在重復的寫配置代碼的時代已經一去不復返。

但是,你有可能不去考慮這個這個框架的原因是由于這個Java框架的重量——許多的開發者發現這個框架不能適應敏捷開發而放棄它。


3. Hibernate

hibernate_training

雖然Hibernate不在RebelLabs的列表中,但Hibernate在討論最好的Java框架的時候是值得一提的。 這種關系映射Java框架通過替換持久化DB訪問高級對象處理函數來解決了對象 - 關系不匹配問題。 隨著每個企業應用程序都相對獨立,Hibernate配備了一個強大的功能套件,幫助后端開發人員調整數據訪問層。 這是一個高級的ORM框架,允許您對Java對象(實體)執行數據庫操作。 它是一個持久性工具,利用Hibernate緩存將數據從Java環境持久化到數據庫。


優缺點:

Hibernate允許你使用你更少的代碼與任何數據庫通信,彌合對象和關系之間的差距。 最重要的是:

Oracle、Db2和MySQL,Hibernate都是數據庫獨立的

類似查詢的bug緩存數據庫

支持N+1和懶惰加載

盡管它的明顯優勢,Hibernate不允許多個插入操作,不允許JDBC的一些查詢。 此外,對于具有較少表的小規模項目,此Java框架可能不是一個好主意。


4. JSF

hibernate_training

作為Java EE的一部分,由Oracle支持的JavaServer Faces。 它雖然不是快速Java開發的最好的框架,它很容易使用,這都是因為Oracle提供了海量的文檔。 此外,在您放棄Java EE開發之前可以考慮一下JSF,JSF沒有外部依賴項,而是有大量功能。 豐富的庫和工具(包括一個易于創建用戶界面的工具集)成為一個亮點,它可以支持你開發無論看起來有多復雜的應用程序。


優缺點:

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

但是,JavaServer Faces太龐大,對于那些以前在web開發基礎上的經驗和技能不夠堅固的人是難以理解的。


5. Vaadin

Vaadin

使用GWT渲染整個網頁,Vaadin成為現代開發人員在創建業務應用程序時選擇的流行框架之一。 利用一個眾所周知的基于組件的方法,Vaadin通過與瀏覽器交互來實現對程序的更改,以此來消除開發人員的負擔。 一個廣泛的UI組件,以及各種小部件和控件,Vaadin允許程序員隨時構建應用程序。


優缺點:

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

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


6. Google Web Toolkit

Gwt

GWT是另一個免費的Java框架,允許編碼器創建和優化復雜的基于Web的應用程序。 GWT軟件開發包具有核心Java API和小部件,用于構建編譯為JavaScript的應用程序。


優缺點:

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

然而,如果你是一個網頁設計師,GWT可能不是最好的Java框架選擇。 GWT對純HTML和后期動態內容布局的網頁不友好。


7. Grails

Grails

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


優缺點:

快速設置一個新的項目和基本設置為編碼節省了大量寶貴的時間。 一個巨大的庫提供了超過900種不同的易于安裝的插件。 盡管Grails是一個全棧開發的Java框架,它有一個龐大的功能,Grails的對象關系映射,使它成為一個相對比較重量級的框架。

那么選擇什么?

在2016年的各種流行的Java框架中選擇合適的概念可能是一個麻煩的任務,因為每個公司基于網絡和移動應用程序創建堅持自己的想法,同時選擇獲勝的方法。 無論您使用的是什么確切的框架,請記住許可證,安裝性,編碼社區的情況,以及文檔等。根據項目類型,有時,明智的做法是將所有工具放在一個的地方,但很多時候,去除冗余而選擇一個輕量級的框架更有意義。

另一個問題是,你的忙碌的團隊是否準備好學習,有空余時間分配新的框架學習。 通常,將您的開發交給遠程團隊并獲得產品是非常值得的。 敬請期待和快樂的發展!



轉載:2016 年 7 個最佳的 Java 框架

英文原文:The 7 Best Java Frameworks for 2016?


版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/5/185320.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息