きみはねこみたいなにゃんにゃんなまほう

ねこもスクリプトをかくなり

Go

Go で hello-world の減量

Go

Go言語ってビルドサイズが大きいですよね。 バイナリサイズを削減する ldflags や upx について、どの程度の減量が見込めるのか確認してみます。 ついでに標準ライブラリへの理解を兼ねて hello-world の書き方もいくつかのパターンで比べてみます。 % go ve…

Go の struct と interface で Embedding

Effective Go の Embedding の内容を試してみます。 Go では embedding を利用して継承のようなことができますが、struct と interface の違いが今ひとつ理解できていなかったため、実際にコードを書いてコンパイラに怒られながら、どういう違いがあるのか試…

配列型のJSONから gRPC(protobuf) 用のモックデータを読み込む

gRPC のハンズオンがてら適当なサーバを書いてみて、ある程度ハンドラが充実してきたので今度は適当なデータをJSONで用意して読み込んでサーバで返すようにしよう、としたときに意外と大変だったという記録です。 動作するサーバコードは以下のリポジトリに…

Go の gRPC のシンプルな Interceptor を自作して理解を深める

Go の gPRC のシンプルな Interceptor を適当に書いたら割とすんなり動いたので基本的な部分をまとめていきます。 今回のサンプルは以下のリポジトリに置いてあります。 go-grpc-middleware にロガーなど様々なミドルウェア(= Interceptor)が用意されていま…

Protocol Buffer と gRPC を Go で使うときのリポジトリを整理する

(=˘ ꒳ ˘=) google と golang がぱっと見ややこしい... Protocol Buffer と gRPC を Go で利用しようとすると色んなリポジトリからツールを落としてくる必要がありますがどれも微妙に字面が似ているので混乱します。それらを整理するために org/repo の形式…

gRPC で日付型を利用する

(=˘ ꒳ ˘=) gRPC の import 周りを整理したい... という記事で go-proto-validators と grpc_cli をうまく組み合わせられないことに対して試行錯誤してました。 その問題の切り分けがてら、今回はもう少し基本的な日付型の利用を通して gRPC の import 周り…

gRPC で go-proto-validators を .proto に import したら grpc_cli がうまく使えない

(=˘ ꒳ ˘=) 最近 gRPC を始めたけどパス解決周りが Protocol Buffer 層も相まって複雑で混乱する... hello.proto に簡単なバリデーションを組み込んで Go で吐き出して grpc_cli で動作確認しようとしたらハマって、そしてそのまま解決していない件になりま…