みんなのGo言語【現場で使える実践テクニック】

著者の一人である fujiwara さんから本を頂きました。fujiwara さん、著者の皆様、技術評論社様ありがとうございます。

みんなのGo言語【現場で使える実践テクニック】

みんなのGo言語【現場で使える実践テクニック】

最初の本書で扱う内容にある通り、Go の文法等には触れられておらず、知っていると良い、便利、注意すべきことといった実践的な内容になっています。 全く Go を書いたことがない人でしたら、先に(この本でも紹介されていますが)A Tour of Go 等で入門してみるのが良いかと思います。

現在 Go を書いている人でしたら色々なことが書かれていますので、あの時うまく書けなかったけどこう書けば良かったのか、しっくり来なかったけどこれが Go のルールなんだなと発見があると思います。

書かれてる方も、songmu さん、mattn さん、fujiwara さん、deeeet さん、lestrrat さん、suzu_v さんと有名な方で丁寧に書かれています。とても安心して読めて、オススメです。 以下少しですが、各章の感想・紹介を書かせて頂きます。

1 章

songmu さんによる、Go の開発環境の構築から、開発をサポートするツールの紹介、Go らしいコードの書き方が紹介されています。 おそらく songmu さんの開発環境にかなり近いものを書かれていると思うので、なるほどこれは便利だなと思うものがあると思います。

2 章

mattn さんによるマルチプラットフォームで動くように注意すべき点がたくさん紹介されています。 大抵自分の環境( 私だと mac です ) で動けばいいようにまず書いてしまう気がします。なので他の環境(私にとっての windows)も含めて考えるとここにも注意しないといけないという、新しい発見がありました。

3 章

fujiwara さんによる実際のアプリケーションを書く際に使えるテクニックが紹介されています。 このように書くと、I/0, メモリの効率が良い、ユーザが使い易いなどから goroutine による非同期処理など様々のことが書かれています。実際に書いているものから抜粋されているので、参考にしやすいと思います。

4 章

deeeet さんによるコマンドラインツールを書く際の構成、標準パッケージの紹介、応用、その他のパッケージの選定等様々なことが紹介されています。 またメンテナンスしやすいようにはこのように書いていくと良いという内容もあり非常にためになります。

5 章

lestrrat さんによる reflect パッケージの使い方が書かれています。 reflect パッケージを使い倒す機会はなかなか少ないです。しかし必要な時は必要になるので、それに直面している方々にはとても参考になると思います。(2年前に読めていれば...)

6 章

suzu_v さんによる testing パッケージの紹介です。 Go のテストへのアプローチは少し他の言語と変わっていて、最近はあまり見ないですが少し前は違和感があるというエントリーを見かけた気がします。基本から、実際に使える色々なテクニックが紹介されているので、こちらも取り入れやすいかと思います。