lelelemon’s blog

カメの歩みでのんびり学んでいます。

2024-01-01から1ヶ月間の記事一覧

【Go言語】go/gin で簡単なREST API を作成

Go言語で gin フレームワークを使って REST API を作成する手順について記載しています。 実行環境について 下記の環境で動かしています。 ubunth "20.04.4 LTS (Focal Fossa) <- WSL2 go version go1.21.6 linux/amd64 docker: 20.10.17 DB環境を準備 今回…

【Go言語】VSCode でデバッグ環境を構築する

開発においてデバッグができるとエラーの特定がしやすいので、 VSCode において Go のデバッグ環境の構築メモを記載します。 検証用コード package main import "fmt" func main() { a := 1 b := 2 c := a + b fmt.Println("合計:", c) } go run main.go 合…

【Go言語】channel で非同期に並列処理を行い、結果を取得する

Go で時間のかかる処理を並列で実行するのに channel という仕組みがあることを知ったので試しました。 channel とは goroutine間で値を送受信するための機構(ChatGPTより)。 goroutine は非同期に処理を並行実行できるものの、処理が終了するとそのまま破…

【Go言語】gomock で外部へのアクセスをモック化して単体テストを書く

golang の単体テストを勉強していて、外部リソースへのアクセスをモック化する方法を調べていたら gomock というのがあることを知り、試したサンプルです。 環境準備 mkdir service mkdir repository mkdir model touch service/book_service.go touch repos…

【Go言語】DB接続サンプル(PostgreSQL)

golangでDB接続(PostgreSQL)を試したのでそのサンプルです。 以下サンプル。 golang で PostgreSQL に接続 PostgreSQL を準備 まずは接続先のPostgreSQL環境を準備します。 ここは手っ取り早く、Docker で環境を作りました。 (前提) Docker がインストー…

【Go言語】DB接続サンプル(MySQL)

golangでDB接続(MySQL)を試したのでそのサンプルです。 以下サンプル。 golang で Mysql に接続 MySQL を準備 まずは接続先のMySQL環境を準備します。 ここは手っ取り早く、Docker で環境を作りました。 (前提) Docker がインストール済みであること mys…

【Go言語】A Tour Of Go (日本語版) のローカル実行エラー

この記事について 日本語版の A Tour Of Go に記述のある通り、下記のコマンドでチュートリアルを実行しようとしたところ、 go tool tour 下記のエラーとなり、そのときの対応メモです。 go tool tourgo: no such tool "tour" 対応内容 同ページ内に下記の手…