IT関連 go-cmp を使った比較 Go でテストコードを書く時に struct などを比較するようなコードを書く必要がありますが、通常は reflect.DeepEqual が使われるようで、自分が参画していたプロジェクトでも reflect.DeepEqual が使われて... 2022-06-17 0 IT関連
IT関連 Go の enum の話 Go には enum という概念がありません。従って、enum のようなものを定義したい場合には別の方法で代替を行う必要があるのですが、どうやら iota というもので代用するのが一般的とされているようです。例えばこんな感じ。enumで列挙... 2020-09-07 0 IT関連
IT関連 Go の変数のスコープのワナ おそらく誰もが一度ははまるであろう現象だと思うのでメモ。例えば、下記のようなコードがあったとする。package mainimport "fmt"func main() { val := 10 if true { ... 2020-08-17 0 IT関連
IT関連 Goa v3 で Viron を動かしてみた 基本的には下記のページに書いてあることをそのまま実施した感じです。ただし、上記は Goa v2 のサンプルなので、v3 で動かすためには少し作業が必要でした。それについてのメモです。結構適当に進めてしまったので、たぶん抜けなどもあります(/... 2020-06-10 0 IT関連
IT関連 Goa で swagger を表示する Goa で swagger を表示する方法のメモです。Goa の Getting Started をベースにした例となります。Getting Started については、 を参照。以降、Getting Started が動く環境が構築済みで... 2020-05-28 0 IT関連
IT関連 VSCodeでGoの開発環境を構築する 1. 拡張機能「Go」をインストールコマンドパレットで "Go" を検索して出てきたものでもインストールできますが、*.go なファイルを読み込んだ時にこの拡張機能を入れるかどうか確認が入るので、Go ファイルを編集したことがある人はすでに... 2020-05-28 0 IT関連
IT関連 Goa Getting Started の問題続編 はじめに過去に書いた の続編です。Goa の Getting Started に書かれている gRPC の機能が動かないという問題が起きていました。Port番号を変えてみるGetting Started では gRPC は 8080 ポー... 2020-05-27 0 IT関連
IT関連 Goa GoaとはGoaはGoのフレームワークの1つで、REST APIに特化しています。ビジネスロジックの開発に専念できるよう設計されており、デザインファイルを定義することで、サーバ・クライアント・ドキュメント(swagger)の3つを生成するこ... 2020-05-26 0 IT関連
IT関連 Go Modules Go ModulesとはGo 1.11 から追加された外部パッケージを管理する機構です。それまでは、Go のコードは外部パッケージも含めてすべて $GOPATH/src 以下に置かなくてはいけないという決まりがあったのですが、Go Modu... 2020-05-20 0 IT関連
IT関連 Goaのインストールではまった件 かなりしょーもない話なのですが、もしかしたら同じような人が出てくるかもしれないので恥を忍んで記録を残しておきます。Goa を使いたいと思って、自分の Mac 環境に Goa をインストールしようとしました。Go 自体は既に使える状態になって... 2020-05-18 0 IT関連