Edited at

Go言語関連書籍のまとめ

More than 1 year has passed since last update.

書籍からGo言語を学ぶために、どの本を手にとって良いか迷っている方に向けて、

各書籍の書評をまとめました。

書評に登場するレベルの定義

学習者レベル定義
出来ること

初級
文法や標準パッケージの使い方を学んでいる段階

中級
ちょっとしたツールを完成させられる段階

上級
実践的なプログラム、製品レベルのものを作るための勉強をする段階

対象外
Go言語の勉強からは脇道に逸れる内容


Go言語関連書籍のまとめ


改訂2版 基礎からわかる Go言語


レベル

初級


URL

改訂2版 基礎からわかる Go言語 | 書籍詳細|株式会社 C&R研究所

改訂2版 基礎からわかる Go言語 | 古川 昇 |本 | 通販 | Amazon


内容

基本の説明が本としてまとまっているのが良い。

細かな説明までは踏み込んでいない。

基本的な文法のまとめが1〜8章まで。

よく使うプログラミングパターンのサンプルが9章にまとまっている。

手早く学習するなら、9章を実際に書いて動かして、わからない部分の知識を1〜8章を見直すのが良さそう。


スターティングGo言語


レベル

中級


URL

スターティングGo言語(松尾愛賀)|翔泳社の本

スターティングGo言語 (CodeZine BOOKS) | 松尾 愛賀 |本 | 通販 | Amazon


内容

一通りの基本を理解して、もう少し細かいGoの言語仕様を理解したい人向け。

どっちでもいいけど、こちらの方がこの場合は良いといった判断が出来る情報が書かれている。

よく使うGoの標準パッケージの使い方の説明があるのが良い。

手元に1冊置いておいて、辞書的に使うのが良さそう。


プログラミング言語Go


レベル

中級

(コンピューターサイエンス知識や、他の言語でそれなりの経験がある方が良い)


URL

プログラミング言語Go - 丸善出版 理工・医学・人文社会科学の専門書出版社

プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES) | Alan A.A. Donovan, Brian W. Kernighan, 柴田 芳樹 |本 | 通販 | Amazon


内容

細かいGoの言語仕様を理解したい人向け。

練習問題がついているので、手を動かして知識を身に付けることができるが、

問題がちょっと難しい。

数学などの知識がある方が良い。


Goプログラミング実践入門 —— 標準ライブラリでゼロからWebアプリを作る

まだ読んだことがない。


レベル

上級


URL

Goプログラミング実践入門 —— 標準ライブラリでゼロからWebアプリを作る サポートページ — マーリンアームズ株式会社

Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る (impress top gear) | Sau Sheong Chang, 武舎広幸, 阿部和也, 上西昌弘 |本 | 通販 | Amazon


内容

Go言語の基本説明は無い。

Goの標準パッケージhttp, templateなどを使用して、Webサーバーを実際に実装していく。

本でのハンズオンを通じて勉強したい人向け。


Go言語によるWebアプリケーション開発

まだ読んだことがない。


レベル

上級


URL

O'Reilly Japan - Go言語によるWebアプリケーション開発

Go言語によるWebアプリケーション開発 | Mat Ryer, 鵜飼 文敏, 牧野 聡 |本 | 通販 | Amazon


内容

Go言語の基本説明は無い。


  • WebSocketの扱い方

  • httpパッケージの使い方

  • Webフレームワークの実装

などを通じて、実践的なサーバー側の実装方法を習得する。

本でのハンズオンを通じて勉強したい人向け。


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


レベル

中級


URL

みんなのGo言語[現場で使える実践テクニック]:書籍案内|技術評論社

みんなのGo言語【現場で使える実践テクニック】 | 松木雅幸, mattn, 藤原俊一郎, 中島大一, 牧 大輔, 鈴木健太, 稲葉貴洋 |本 | 通販 | Amazon


内容

Go言語の基本説明は無い。

Go言語で製品レベルの開発をするために知っておくと良いテクニックがまとまっている。


  • 開発環境・本番環境などを分ける

  • テストのテクニック

  • reflectパッケージの扱い

開発にある程度慣れてきたら読む本。


Go言語による並行処理 (Concurrency in Go)

まだ読んだことがない。

日本語版は今のところない。

日本語版が出版予定になったようです。(2018年10月26日)


レベル

上級


URL

日本語版

Go言語による並行処理 | Katherine Cox-Buday, 山口 能迪 |本 | 通販 | Amazon

英語版

Amazon | Concurrency in Go: Tools and Techniques for Developers | Katherine Cox-Buday | Software Development


内容

Goの並行処理のパターンを紹介していく内容。

とにかく並行処理を極めたい人向け。


Go言語でつくるインタプリタ


レベル

対象外


URL

O'Reilly Japan - Go言語でつくるインタプリタ

Go言語でつくるインタプリタ | Thorsten Ball, 設樂 洋爾 |本 | 通販 | Amazon


内容

Go言語の勉強のための本ではない。

インタプリタ方式のプログラミング言語を実際に作ってみる本。

万人向けではなく、プログラミング言語の実装に興味がある人向け。


Goならわかるシステムプログラミング


レベル

対象外


URL

Goならわかるシステムプログラミング | 渋川よしき |本 | 通販 | Amazon


内容

OS, カーネル, システムコール, ソケット通信などのシステムレベルの話をGo言語の標準ライブラリの実装を覗きながら理解を深める本。

万人向けではない。

こちらのASCII.jpの連載記事を書籍にまとめ直したもののため、WEBで一度内容を確認してみると良い。