Kyoto.go remote #8 Reading uber-go/guide お題
気になったこと/わからなかったこと/疑問に思ったこと
Zero-value Mutexes are Valid
なんでポインタを使わないのか
たぶん「使わなくていいなら使わない」という話
ポインタ使うと難しくなってしまう(なにか問題があったときにわかりにくい)とかがありそうかなって思った。luccafort.icon
Receiving Slices and Maps
毎回コピーするとパフォーマンス悪いのでは?
ほとんどのケースでは気にするほどパフォーマンスに影響しないはず
メソッドをexposeしていると、どんな値が渡されるかコントロールできないので防衛的にコピーせざるを得ない
Returning Slices and Maps
一見問題なさそうに見えるけど、Snapshotの返り値を通して参照が外に漏れてる
動的言語出身だからかな、これレビュー依頼来ても見逃しちゃいそう。機械的に防ぐ方法とかないのかな?
Channel Size is One or None
バッファがないと必ず待ちが発生するので動作が読みやすい
「根拠はないけど適当にバッファ積んどこう」はやめよう
確認したいこと
結構量があるので次回以降も同じ題材を読んでいくか?
やめたくなったら個人でも継続できるし声があがるまでは継続してやっていく
ある程度範囲を決めて次回以降は最低誰かは読んできている前提で進めるか?
読む時間よりも議論する時間にコストかけたほうがいいのでは?という思いからの質問。
努力目標で事前に予習ありにする
次回やりたいこと
次回は Start Enums at Oneから Error Wrapping まで