結論

  • 読んで良かった
  • タイトル通り入門として言語の基礎から説明されている
  • プログラミング初心者、未経験者向けの入門ではない
    • 他言語を経験済みで新たにGo言語を学ぶ人を対象としている
  • 開発環境を作って実際に実行できる
  • 入門とは言いつつ言語やパッケージの仕様がかなり細かく紹介されている
    • 細かすぎる箇所は正直読んでも「ふーん」って感じ

読もうと思った経緯

現職の会社に転職して初めてGo言語(以降Goと表記)で開発を行うようになったので、基礎学習の本を探していて見つけました。日本人が書いた内容の方が圧倒的に頭に入りやすいのと、評判が良かったので選びました。読む以前に自分でGoを使ったWebアプリの実装やGo by Example(チュートリアル的なの)はやっていましたが、やはり体系的に学ぶ過程も重要だと思って本も読もうと思った次第です。

読んだ感想

ざっくりとは最初の結論の通りですが、もう少し詳細に書いてみます。

本のタイトルの通り、入門書として基礎から説明されている

まず前提として、プログラミング自体の初心者や未経験者を対象とした本ではないため、そういった方が読むにはハードルが高いと思います。あくまでも他言語をある程度経験して、様々な概念にある程度触れている人向けの内容となっています。

この本では

  1. 開発環境の構築方法
  2. プログラムの構成と実行方法
  3. 構文や言語構造
  4. 参照型、構造体、インターフェースといった概念や機能
  5. Goの標準ツールや標準パッケージ

を取り扱っています。

Goでプログラムを本格的に実装して動作させるために必要な情報が一通り詰まっています。とはいえ、アーキテクチャや設計手法のような内容は含まれないため、あくまで「言語」の入門となっています。

開発環境を作って実際に実行できる

ただ言語の説明を書いているだけでなく、実際に動作する環境を作って挙動を確認できるようになっているため、読みながら手を動かして理解を深めることができます。本だけ読んでいるとなかなか内容が入りにくい側面があるため、手を動かせるのは良い点だと思います。

入門といいつつかなり細かい仕様についても説明されている

最後の方のパッケージ(ライブラリ)の説明ではかなり詳細に仕様や使い方、注意点などがまとめられています。(私が勝手に入門って言ってるんだけども。)勉強にはなりますが、本当にこれからGo始めるってタイミングでこれを読んでもよく分からず頭パンクするだけだと思いますので、一旦読み流してもらっていいんじゃないかと思います。少なくとも私は無理だったので、読むだけ読んで具体的な理解は一旦置いておきました。

おわり

最近英語書籍の翻訳を多く読んでいたせいか、日本人に書かれた本がやけに読みやすく感じました。一通り読んだとはいえ半分も理解しているか怪しいので、定期的に基本には立ち返りたいと思いました。最後の方は細かすぎて私はついていけなかったけど、優秀な人や細かい技術仕様大好きな人には余裕なんですかね…。

本の感想シリーズ第4弾でした。過去の感想記事も良ければ読んでみてください。「本を読んだ感想」タグから参照できるようになってます。