CINC Tech Blog

株式会社CINCのエンジニアチームが日々習得した技術やTipsを公開するブログです

Go言語ビギナーへの書籍5選

はじめに

CINC開発部のTです。

CINCには福利厚生の一環として、書籍購入制度があります。 社員の自己学習を推奨する目的に設けられた制度で、業務に関する書籍であれば、高価な専門書を会社負担で購入することができます。 現時点では金額、冊数の限度は特になく、上長の許可さえ降りれば無制限に購入できる仕組みになります。

そんな制度を活用して、最近CINCでも採用の進んでいるGoに関する書籍を購入したので、その内容を簡単にまとめていきます。

スターティングGo言語

スターティングGo言語 (CodeZine BOOKS)

スターティングGo言語 (CodeZine BOOKS)

Goの基本構文を懇切丁寧に解説した入門本。

初版が2016年ですが、紹介されている内容はGoの基礎的な文法・機能に絞られており、学んだ内容が無駄になることはないでしょう。 またGoは後方互換性をできるだけ保つことを明言しており、その点はあまり心配する必要はないかと思います。 開発で頻繁に使用されるような標準ライブラリの使い方がまとめられているので、Goの概要を把握することができます。 構造体やインターフェースのGo特有の概念にも触れられており、他言語経験者にも退屈しない内容です。

プログラミング言語Go

プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)

プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)

巷では、Go言語のバイブルと称される本書。 Goの詳細な言語仕様を把握したい人におすすめですが、最初の取っ掛かりとしては難しい印象です。 巻末の練習問題で理解度チェックができるのはありがたい。

Goプログラミング実践入門

Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る impress top gearシリーズ

Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る impress top gearシリーズ

フレームワークを使用せずに標準ライブラリのみでWebアプリケーションの作成方法が紹介されています。 第1章は、WebとHTTPの解説に終始するが、GoでWebサーバーを立てるのには欠かせない知識であり、参考になります。 他書ではあまり記載のないGoのデプロイ方法もプラットフォーム毎に記述があり、開発から公開までをサポートするオールインワンな書籍です。

Go言語による並行処理

Go言語による並行処理

Go言語による並行処理

  • 作者: Katherine Cox-Buday,山口能迪
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2018/10/26
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る

Goの並行処理のパターンとその裏側のロジックがまとめられた本です。 概念の説明だけに留まらず、 デッドロックを回避する方法や、 contextを使用したタイムアウト設計等、実践的な内容も多く、goroutineで何かしたいときの必読書です。 ただGo文法の解説はほぼ無く、Goをある程度理解している人向けです。

みんなのGo言語

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

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

  • 作者: 松木雅幸,mattn,藤原俊一郎,中島大一,牧大輔,鈴木健太
  • 出版社/メーカー: 技術評論社
  • 発売日: 2016/09/09
  • メディア: Kindle版
  • この商品を含むブログを見る

Goを使用した開発のテクニックを著者それぞれが紹介している本です。 ディレクトリ構成やバージョン管理の方法等、開発現場で役に立つTipsが豊富に盛り込まれており、手元にあると何かと役に立ちます。チームで開発するときに、メンバーの共通理解として本書の知識があると開発がスムーズにいくかもしれません。 何より手軽に読めるボリューム感がありがたい。

まとめ

Goは近年、Web界隈で非常に注目度の高い言語です。 この記事がこれからGoを学習したい人への一助になればと思います。