Go言語を体系的に学びたい人に向けて、入門から実践まで役立つ9冊をまとめた。いずれもこのブログで個別にレビューした本であり、各項目からレビュー記事へ移動できる。文法の入門から、言語の深い理解、Web・システム・分散の実装へと、学習の道筋に沿って並べた。
なぜGo言語を学ぶのか
Goはシンプルな文法と強力な標準ライブラリ、優れた並行処理を備え、サーバーサイド開発に広く使われている。学ぶ範囲がコンパクトなため、短期間で実務に到達しやすい。一度身につければ、CLIからWeb、クラウド基盤まで幅広く応用できる。
1. Goに入門する
スターティングGo言語
Goの文法と基本を、初学者向けにやさしく解説する入門書である。最初の一冊として無理なく読み進められる。詳細はレビューにまとめた。
初めてのGo言語 第2版
他言語の経験者に向けて、イディオマティックなGoの書き方を解説する一冊である。Goらしい書き方を最初から押さえられる。内容はレビューで紹介した。
2. 言語を深く理解する
プログラミング言語Go
Goの設計者らによる、言語仕様を丁寧に扱った定番の一冊である。文法の背後にある考え方まで理解できる。感想はレビューに書いた。
実用Go言語
現場で役立つ実践的なGoの書き方を、幅広く整理した一冊である。入門の次に読むと力がつく。詳しくはレビューで取り上げた。
Go言語100Tips
開発者がやりがちな間違いを、100の具体例で解説する一冊である。落とし穴を先に知って手戻りを減らせる。詳細はレビューにまとめた。
3. Webとシステムを作る
Goプログラミング実践入門
標準ライブラリだけでWebアプリをゼロから作る過程を追う一冊である。フレームワークに頼らない土台が身につく。内容はレビューで紹介した。
Go言語によるWebアプリケーション開発
GoでのWeb開発を、実装例を通して学べる一冊である。ルーティングやテンプレートの扱いを具体的につかめる。感想はレビューに書いた。
Goならわかるシステムプログラミング
システムコールやメモリなど、低レイヤの仕組みをGoで学ぶ一冊である。普段は見えない部分への理解が深まる。詳しくはレビューで取り上げた。
4. 分散システムへ
Go言語による分散サービス
ログ収集から分散合意まで、分散サービスをGoで作り上げる一冊である。本番を見据えた設計と実装を体験できる。詳細はレビューにまとめた。
まとめ
まずは入門2冊で文法に慣れ、次に言語を深める本で書く力を高めるとよい。Web・システム・分散は、作りたいものに合わせて選ぶのが効率的である。各書の個別レビューも用意したので、気になった本から読み進めるとよい。