乾貨分享:六個知名的Go語言web框架

QF董懂發表於2019-03-26

框架一直是敏捷開發中的利器,能讓開發者很快的上手並做出應用,甚至有的時候,脫離了框架,一些開發者都不會寫程式了。成長總不會一蹴而就,從寫出程式獲取成就感,再到精通框架,快速構造應用,當這些方面都得心應手的時候,可以嘗試改造一些框架,或是自己創造一個。

Go 是一門正在快速增長的程式語言,專為構建簡單、快速且可靠的軟體而設計。 golang提供的net/http庫已經很好了,對於http的協議的實現非常好,基於此再造框架,也不會是難事,因此生態中出現了很多框架。本篇文章主要介紹六個知名的Go語言web框架。

乾貨分享:六個知名的Go語言web框架

Beego:開源的高效能 Go 語言 Web 框架。

beego是一個快速開發Go應用的http框架,go 語言方面技術大牛。beego可以用來快速開發API、Web、後端服務等各種應用,是一個RESTFul的框架,主要設計靈感來源於tornado、sinatra、flask這三個框架,但是結合了Go本身的一些特性(interface、struct繼承等)而設計的一個框架。

Iris:全宇宙最快的 Go 語言 Web 框架。完備 MVC 支援,未來盡在掌握。

Iris是一個快速,簡單但功能齊全的和非常有效的web框架。提供了一個優美的表現力和容易使用你的下一個網站或API的基礎。

Revel:Go 語言的高效、全棧 Web 框架。

高生產率,完整的web框架去語言。

下面三個知名的 Go 語言 Web 框架並不是真正意義上的框架,因為沒有完備支援所有功能,但是大部分的 Go 社群認為它們是的,所以,我們有義務將這幾個框架(Echo,Gin 和 Buffalo)也介紹一下。

Buffalo:使用 Go 語言快速構建 Web 應用。

Buffalo能幫助你生成一個web專案,已經從前端(JavaScript, SCSS等)後端(資料庫、路由等)已經連線並準備執行。 從那裡它提供了簡單的api來快速構建web應用程式中去。水牛不只是一個框架; 這是一個全面的web開發環境和專案結構讓開發人員瞭解業務,建立他們的業務。

Echo:簡約的高效能 Go 語言 Web 框架。

Echo是為用Java開發Web應用程式提供的一個物件導向,事件驅動的框架。使用Echo 框架來程式設計類似於使用Swing API來開發應用程式或applets。

Gin:Go 語言編寫的 Web 框架,以更好的效能實現類似 Martini 框架的 API。

Gin是一個golang的微框架,封裝比較優雅,API友好,原始碼註釋比較明確,已經發布了1.0版本。具有快速靈活,容錯方便等特點。

以上所有這些框架,除了 Beego 和 Revel 之外,都可以適配任意 net/http 中介軟體。其中一部分框架可以輕鬆地做適配,另外一些可能就需要額外的努力 [即使這裡的痛苦不是一定的]。



相關文章