溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

go語言有哪些Web框架

發(fā)布時間:2020-06-12 19:55:24 來源:億速云 閱讀:152 作者:鴿子 欄目:編程語言

Go是一門正在快速增長的編程語言,專為構(gòu)建簡單、快速且可靠的軟件而設(shè)計。下面給大家介紹介紹幾款Go語言快速開發(fā)的web框架,有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。

go語言有哪些Web框架

Beego框架

Beego框架是臺灣程序員astaxie的Goweb開發(fā)的開源框架。Beego框架最大的特點是由八個大的基礎(chǔ)模塊組成,如下圖所示:

go語言有哪些Web框架

八大基礎(chǔ)模塊的特點是可以根據(jù)自己的需要進(jìn)行引入,模塊相互獨立,模塊之間耦合性低。

相應(yīng)的Beego的缺點就是全部使用時比較臃腫,通過bee工具來構(gòu)建項目時,直接生成項目目錄和耦合關(guān)系。這會導(dǎo)致在項目開發(fā)過程中受制性較大,本來Golang語言是靈活,在Beego中會收到一些限制,當(dāng)然這個限制是有限的。

Beego框架受歡迎的原因還有一個就是Beego由漢語官方網(wǎng)站,網(wǎng)址如下:https://beego.me/docs/intro/,并配備有完整的學(xué)習(xí)文檔和項目案例。

Gin框架

Gin是一個golang的微框架,封裝比較優(yōu)雅,API友好,源碼注釋比較明確,已經(jīng)發(fā)布了1.0版本。具有快速靈活,容錯方便等特點。其實對于golang而言,web框架的依賴要遠(yuǎn)比Python,Java之類的要小。自身的net/http足夠簡單,性能也非常不錯??蚣芨袷且恍┏S煤瘮?shù)或者工具的集合。借助框架開發(fā),不僅可以省去很多常用的封裝帶來的時間,也有助于團隊的編碼風(fēng)格和形成規(guī)范。

目前在很多使用Golang的中小型公司中進(jìn)行業(yè)務(wù)開發(fā),使用Gin框架的很多,大家如果想使用golang進(jìn)行熟練web開發(fā),可以多關(guān)注一下這個框架。

Gin框架源碼地址:https://github.com/gin-gonic/gin

Gin學(xué)習(xí)文檔地址暫時沒有找到系統(tǒng)的,如果入門學(xué)習(xí)的話,可以關(guān)注這個:https://www.jianshu.com/p/98965b3ff638

在企業(yè)開發(fā)環(huán)境下,還需要學(xué)習(xí)用到xorm框架,這里一并列一下xorm框架的資料。xorm框架學(xué)習(xí)文檔:http://xorm.io/docs

Iris框架

Iris框架在其官方網(wǎng)站上被描述為Go開發(fā)中最快的Web框架,并給出了多框架和多語言之前的性能對比。目前在github上,Iris框架已經(jīng)收獲了14433個star和1493個fork,可見該框架也非常受歡迎。在實際的開發(fā)中,Iris與Gin的學(xué)習(xí)曲線幾乎相同,因此,掌握了Gin就可以輕松掌握Iris框架。Iris框架的相關(guān)資料如下,供大家學(xué)習(xí):

+ Iris官網(wǎng):https://studyiris.com/example/iris.html

+ Iris源碼地址:https://github.com/kataras/iris

+ Iris系統(tǒng)學(xué)習(xí)文檔:https://iris-go.com/

Echo框架

Echo是個快速的HTTP路由器(零動態(tài)內(nèi)存分配),也是Go的微型Web框架。其具備快速HTTP路由器、支持?jǐn)U展中間件,同時還支持靜態(tài)文件服務(wù)、WebSocket以及支持制定綁定函數(shù)、制定相應(yīng)渲染函數(shù),并允許使用任意的HTML模版引擎??梢酝ㄟ^如下一張圖表明Echo框架的路由性能:

go語言有哪些Web框架

Echo的相關(guān)資料如下,供大家進(jìn)行學(xué)習(xí):

+ 關(guān)于Echo框架的介紹:[https://mp.weixin.qq.com/s/BlyQvkw84dBhs4mX_SB5DQ](https://mp.weixin.qq.com/s/BlyQvkw84dBhs4mX_SB5DQ)

+ Echo框架官網(wǎng):[https://echo.labstack.com/](https://echo.labstack.com/)

+ Echo源碼地址:[https://github.com/labstack/echo](https://github.com/labstack/echo)

上面列舉的,都是我自己用的過的和熟悉的,如果作為一個goWeb開發(fā)者程序員來說,大部分業(yè)務(wù)絕對足夠用了,上面的這些框架在github上的star數(shù)都超過了1萬,有的接近2萬。說明這些框架是最受開發(fā)者喜歡和接受的,因此可以從上面這些框架學(xué)起。

如果還想了解其他的框架,可以關(guān)注的有:Buffalo框架、Revel框架、Martini框架、Traffic框架、Goji框架等等

以上就是golang Web框架有哪些?的詳細(xì)內(nèi)容,更多請關(guān)注億速云其它相關(guān)文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI