grpcの練習がてらgoのディレクトリ転送パッケージを作成した


なぜ作ったか

  1. gRPCを練習するために,なにか作りたかった
  2. 研究の過程で,ディレクトリを転送するパッケージがあったらいいのになと思っていた
    上記2つの動機が重なり,作りました.

成果物

https://github.com/youtangai/dts
使い方はgithubのREADMEをご覧ください

工夫

  • パッケージを作るのは初めてだったので,いろいろなオープンソースを参考にディレクトリ構成を考えました.
  • できる限りソースコードが見やすくなるように,以下の点に気をつけました.
    • 1関数30行超えないようにする
    • エラーや汎用的な関数はlibに用意する
    • 関心事に合わせてファイルを切り分ける(server.goやclient.goなど)

感想

ProtocolBuffersとgRPCの良い練習になりました.
ディレクトリを転送したいなんて需要はあまりないと思いますが,もしよかったら使ってみて,改善点など教えていただけると幸いです.