Gin + Vue全棧開發實戰(一)
Gin入門
本章概要
- Gin簡介
- 開發第一個Gin程式
1.1 Gin簡介
Gin是用Go語言編寫的一個輕量級Web應用框架,現在在各個公司包括位元組跳動、bilibili等大網際網路公司都得到了廣泛的應用。它有很好的效能和更快的路由。由於其本身只是在官方 net/http 包的基礎上做的完善,所以理解和上手很平滑。優雅的封裝,友好的API,明確的註釋。如果你們打算Go語言來構建一個Web應用,我非常推薦你使用它。總體來說,Gin的主要有如下優勢:
- 極其優秀的效能表現
- 擁有 Go 的程式設計思想
- 基於官方 net/http 包的有限封裝
- 使用了史上最快的路由 httprouter
- 方便、靈活的中介軟體
- 強大的資料繫結
- 活躍的開發者
Gin和Go語言一樣,是一個“年輕”的專案,發展非常迅速,使用者越來越多。非常適用於大小公司的線上環境執行。
1.2 開發第一個Gin程式
Go經過多年的演進,也產生了很多的依賴管理工作,包括dep,govendor等,在Go11版本後建議大家使用Go Modules來進行依賴管理。
1.2.1 建立Go Modules工程
這裡不過多說明Go Modules的介紹,只介紹兩種建立Go Modules工程的方式。
1. 使用命令列建立Go Modules工程
首先可以通過go mod命令建立一個Go Modules工程,在cmd視窗中執行如下命令:
1 go mod init 2 # 使用 go help mod 可以瞭解更多關於這個工具的使用。
使用命令列建立後,直接使用GoLand開啟即可。
2. 使用GoLand建立Go Modules工程
GoLand作為與Intellij IDEA同屬JetBrains公司出品的編碼工具,在業界得到了廣泛的應用。使用GoLand建立Go Modules的步驟如下:
步驟一:建立專案時選擇Go Modules,然後按照需要選擇專案存放的位置和命名好專案名稱即可。
在國內,我們可以使用https://athens.azurefd.net/作為代理,以免下載不到被牆的官方依賴包。
1.2.2 專案構建
1.新增依賴 (可選)
在對應專案目錄的go.mod檔案中新增Gin依賴:
require github.com/gin-gonic/gin v1.4.02.編寫啟動類
接下來建立專案的入口檔案,在專案根目錄(與go.mod同級目錄)建立一個main.go檔案,程式碼如下:
package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
func main() {
r := gin.Default()
r.GET("/hello", func(c *gin.Context) {
c.String(http.StatusOK, "hello gin!")
})
r.Run() // listen and serve on 0.0.0.0:8080
}
為什麼說第一步是可選的呢?是因為如果你敲入程式碼,程式碼中又有對應依賴引入(import),在執行啟動命令時會自動幫你下載需要的依賴。非常智慧,而IDE也會做同樣的事情。
1.2.3 專案啟動
啟動專案有三種不同的方式,下面一一介紹。
1.使用命令列啟動
可以直接到相關目錄使用命令列啟動專案,命令如下:
go run main.go 或 go run .
啟動成功後,在瀏覽器位址列輸入 “http://localhost:8080/hello" 即可看到執行結果,執行結果如圖1-5所示。
2.直接執行main方法
直接在IDE中執行main方法,就可以看到專案啟動了,如圖1-5所示。
圖1-5
啟動成功後,也可以在瀏覽器中直接訪問/hello介面。
3.打包啟動
當然,Go應用也可以直接打成目標檔案執行,在不同的環境中可以編譯打成不同的包,在windows環境是.exe檔案,直接執行編譯打包命令:
go build main.go
或
go build .
打包完成後可以直接執行可執行檔案即可,如圖1-7所示
圖1-7
1.3 小結
本章主要向讀者介紹了一個簡單的Gin專案的基本建立過程,從而讓讀者感受Gin的魅力。當一個Gin專案建立成功後,只需要少量的程式碼就可以啟動一個性能非常好的Web應用,開發者可以直接使用它進行介面和Web應用的開發。第2章向讀者詳細介紹一下Gin的路由功能。
本章程式碼地址