2014年3月29日土曜日

Golang Cafe #22を開催しました。

Golang Cafe #22を開催しました。

ソースコードはgithubにありますので、そちらをごらんください。

今回は、私がインフルエンザにかかってしまって、少し時間が取れたので、じっくり準備をすることができました。(今回のテーマにする予定はしていなかったのですが…)

今回のテーマは、「OAuthのライブラリをリファクタリングする」というのをテーマにしてみました。私は出題者なので、出題の背景を書き残しておきます。

前回までに、Twelve Go Best Practicesを読み、ある程度、コードを書くためのコツを掴んだので、それを実践する事ができないかというところから考えました。
(Golang Cafe自体、私がコードを書く時間をネタで募集をしたところから始まっているので)
資料と標準パッケージの使い方はある程度やってきたので、次は、「人のソースコード」を読んでみるという方向性で考えました。公式サイトには、候補として、vitessと、dockerのソースコードを読むというのを挙げていましたが、以前、OAuth2をやったので、https://github.com/mrjones/oauthを読むのも良いかと思い、先行して読み進めていました。ただ、動きをみないとわからない点も多かったので、力づくで、最低限動くコードを作ってみた所、いい感じにダメコードができたので、ちょうど良いのかな?と思ったので設定しました。

ただ、ソースコードを修正するということをしようと思うと、まず、読んでもらわないといけないのもあって、今回は、最初のコードを読み、出題者(私)に質問するという内容になりました。

個人的には、以下の点について議論ができそうな気がしているので、良いテーマなのかな?と思っています。

  1. ライブラリ開発ということで、APIの設計(?)
  2. Twelve Go Best Practicesの適用
  3. ランダム文字列が生成される部分についてのテスト
  4. 通信が発生するので通信に関するテスト
  5. 必要ならMockを使ったテスト
それから、次回は、その次の京都(祝半年)のための準備もしておきたい気がしていますが、そういう時間が取れれば良いですが…。