Step 1. コードの書き方を学ぶ
コードレビューする際に気をつけるポイントをまとめた CodeReview Comments。 他の言語とは違っている Go 特有の事例をたくさん載せてくれている。 原文は英語だけど、日本語訳もある。
golang/go CodeReviewComments 日本語翻訳 · GitHub
Go らしいコードの書き方を知りたいなら、Go 公式のコードを読むのが一番良い。オープンソースなのは良いこと。
GitHub - golang/go: The Go programming language
Step 2. Go らしい API 設計について学ぶ
エラー処理は、他の言語とは異なっていて、Go特有の考え方が多い。よってちゃんと学んでおかないとエラーが起きたときに適切に handling できておらず、苦しむことになる。
Golangのエラー処理とpkg/errors | SOTA
Go らしい API とはどのようなものか? 次の資料などで具体例込みで見ると理解しやすい。
GoらしいAPIを求める旅路 (Go Conference 2018 Spring)
また、インタフェースは Java などの有名な言語の Interface とは少し勝手が異なる。ここも複雑だがちゃんと勉強する。とにかく、標準パッケージのインタフェースの使い方を真似するように心がける。
Step 3. Go らしいパッケージ設計について学ぶ
個々の API をデザインできるようになってきたら、次はさらに大きな枠であるパッケージについて学ぶ。