GoのGinを触ってみた
こんにちは、YAMAです。
今回はGoのWebフレームワークであるGinを触ってみた感想を書いていこうと思います。
前回、Goの基礎的なチュートリアルを触り、先月から本格的にGoを学び始めました。
今回は学園祭でGoを使ってWebアプリを作ることになったので、Ginを選んで触ってみました。
Ginを選んだ理由
GoのWebフレームワークは色々ありますが、Ginは特に人気があるフレームワークの一つです。
理由としては、
- シンプルで使いやすいAPI
- 高速なパフォーマンス
- 豊富なドキュメントとコミュニティサポート
などが挙げられます。
これらの理由から、Ginを選んで触ってみることにしました。
Ginを触ってみた感想
実際にGinを触ってみて、まず感じたのはそのシンプルさでした。
ルーティングの設定やミドルウェアの追加などが非常に直感的で、Goの標準ライブラリを使うよりもずっと簡単にWebアプリを構築できることがわかりました。
また、Ginのパフォーマンスも非常に良く、リクエストの処理が高速に行われることが実感できました。
さらに、Ginのドキュメントも非常に充実しており、困ったときにはすぐに解決策を見つけることができました。
これは確かに人気があるなと感じました。
ginを使ってアプリケーションを作ってみよう!
Ginを触るための環境構築も非常に簡単でした。
Goの環境構築に関しては以下の記事を参考にしてください。
Goの環境構築をしてみた
あとは、簡単なコードを書いてみるだけです。
まずはginのモジュールをインストールします。
import "github.com/gin-gonic/gin"そして、以下のコードをmain.goに書いてみます。
package main
import (
"log"
"net/http"
"github.com/gin-gonic/gin"
)
func main() {
// Create a Gin router with default middleware (logger and recovery)
r := gin.Default()
// Define a simple GET endpoint
r.GET("/ping", func(c *gin.Context) {
// Return JSON response
c.JSON(http.StatusOK, gin.H{
"message": "pong",
})
})
// Start server on port 8080 (default)
// Server will listen on 0.0.0.0:8080 (localhost:8080 on Windows)
if err := r.Run(); err != nil {
log.Fatalf("failed to run server: %v", err)
}
}この後、ターミナルで
go run main.goを実行すると、サーバーが起動します。
このコードは、GitHubのginのチュートリアルに乗っているのですが、/pingエンドポイントにアクセスすると、{"message": "pong"}というJSONレスポンスを返す簡単なWebサーバーを構築しています。
このように、Ginを使うことで非常に簡単にWebアプリを構築できることがわかります。
まとめ
GinはGoのWebフレームワークの中でも特に人気があり、シンプルで使いやすいAPI、高速なパフォーマンス、豊富なドキュメントとコミュニティサポートが魅力的です。
実際に触ってみて、その魅力を実感することができました。
これからもGinを使って、さらに学園祭のWebアプリを作ってみたいと思います。
それではまた次回!
以上YAMAでした。