見出し画像

【入門】golangの学習におすすめの本/書籍7選

これから業務でgolangを使うことになった方、これからgolangを使ってキャリアを歩んでいきたいという方でどのように学習していこうか悩んでいる方もいるかと思います。

そこで今回はgolangを学ぶために参考となったおすすめの本/書籍を紹介していきます。


golangとは

golangはGoogleが2009年にオープンソースのプロジェクトとして公開されたプログラミング言語です。そもそもはGoogle社の課題を解決するために開発された言語で、開発速度を向上させ、静的解析しやすい言語を目標として開発されました。

golangはメルカリやYouTubeなど、日頃使用している大規模なサービスにも採用されているため、実績は十分と言えます。

Goの主な特徴として、以下のようなものが挙げられます。

・初心者でも使いやすく学習コストが低い
・処理速度が速い
・並行処理が可能
・標準ライブラリが豊富
・シングルバイナリ
・クロスコンパイ

言語仕様の特徴としては、冗長な記述が不要であったり、曖昧な記述ができません。逆に言えば、シンプルに書けるのがメリットであるため、誰でもある程度は書きやすい言語ともいえます。


golang学習におすすめの本7選

golangの特徴を掴んだところで理解を進めていくのにおすすめの本を紹介していきます。筆者が実際に読んだ中からおすすめさせていただきます。


初めてのGo言語

まずは安心と信頼のオライリーからの一冊

基本的には入門から応用まではこの一冊で網羅されています。説明も順序立てて説明されており完成度の高い参考書となっています。

しかし、元は英語の内容を日本語訳されたものなのか、違和感のある日本語があるため読みにくさはあるかもしれませんん。他のプログラミング言語を既に習得していて、これからさらにgolangをマスターしたいという方にはおすすめですが、プログラミングが全くの初心者には少しハードルが高いです。

入門編、初級編、中級編、上級編とのように別の参考書を買うのであれば、「初めてのGo言語」一冊買ったほうが結果的にコスパは高いといえます。

初学者向けによく整理され整然と順序立てて説明されているうえ豊富な実践的プラクティスが自然に織り込まれており応用書を別途読む必要のない非常に完成度の高い入門書に仕上がっている。本書の数ヶ月前に刊行された実用Go言語はほとんど重複した内容の応用書でありジェネリクスにも対応していないため完全に無用の長物となった。

購入者のレビューより


スターティングGo言語

オライリーに読みにくさを覚えてしまう方にはスターティングGo言語という本がおすすめです。

こちらも「初めてのGo言語」と同様にgolangの入門編から中級レベルまで解説されているため、この一冊あればある程度のレベルまでgolangを習得することができます。

さらにはJavaやC++、PythonやPHPなどの他のプログラミング言語との比較も記載されているため、他の言語で開発経験がある方はすんなりと理解もできます。

この本を読みながら公式チュートリアルであるA Tour of Goを進めていくと、理解がどんどん深まっていきます。

適切な量の丁寧な説明で、golangの入門書では一番分かり易いと思います。
golangは小道具としての役割も大きく、スタートラインでこのような良い入門書で学んで、まず簡単なツールを作ってみることが大切かと思います。

購入者のレビューより


詳解Go言語Webアプリケーション開発

こちらはgolangの基礎知識を得たあとに読むことをすすめる本となっています。

例えば、疎結合な実装や認証関連など実際の開発で用いる箇所にも触れていたり、DockerやGithubなどを用いた開発はどのように行うかについても触れられています。さらに後半にはハンズオン形式で手を動かしながら実装をしていくため、実際の開発を意識しながらgolangを学ぶことができます。

ただ明らかに誤記という箇所も多々あるため、何を言いたいのか察しられる人にとっては問題ありませんが、事細かく理解をしたい方にはおすすめできません。

golangを初めたばかりの初心者には少し難しい内容に思える。対象読者はある程度Goにも慣れ、Goの公式ドキュメントを読んで理解できるレベルの人かなと思います。
golangまたは、その他の言語でもAPI開発を行なったことがある人が読むと得られるものが多いと思います。
特に後半のハンズオンは非常に有用であり、実装にそこまで時間もかからないので一度ローカルで動かしてみるといいと思います。

購入者のレビューより


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

この本ではフレームワークを用いずにgolangと標準ライブラリだけを使って、ゼロからWebアプリケーションを開発する流れが記載されています。

ある程度golangについて知っていないと読み進めていくのは難しいため、基礎的な本を読んだ後の2冊目、3冊目として読むことをおすすめします。

現状、Go言語の書籍の中では一番実践的かつ分かり易く解説されています。
フレームワークに頼らず、Webの仕組みを理解するのにも役立つはずです。
ただし、実案件で一般公開するWEBサービスを実装するには、何らかのフレームワークがないと厳しいと思います。
本書ではあえてフレームワークを使わずWebの仕組みの基本から丁寧に説明し、Go言語周辺技術の解説を分かり易くしています。

購入者のレビューより


みんなのGo言語

実際に現場でgolangを書くときにしかわからないtipsが詰まったのがこの本

これからgolangの開発をするという方でも、既にgolang開発の現場に参画している方にとっても参考になるような、Goエンジニアの知見が詰まっています。

こちらも入門書やある程度golangのコードを書いてから読み始めることをおすすめします。

入門書を終え、golangを実際どう使おうと考えたときに役立つ本だと思います。複数の方が各々専門のパートを説明しており、実践的かつ分かり易いです。

購入者のレビューより


エキスパートたちのGo言語

一つ前に紹介した「みんなのGo言語」と同じく、より実践的、上級的な知見を深めたいという方におすすめなのがこの本

golangが使われている様々なプロダクトについてアーキテクチャとプログラムコードのセットで紹介されており、golangで実際にプロダクトを作る際のヒントが詰め込まれています。

自ら応用力を身につけるための取っ掛かりとなる情報を提供されています。

Goを使った様々な実践的プロダクトが、アーキテクチャとプログラムコードのセットで紹介されており、これからGoで何を作ろうか?と検討する際のヒントになると思います。

購入者のレビューより


Go言語 100Tips ありがちなミスを把握し、実装を最適化する

この本にはgolangで間違えがちなことを100Tipsとして取り上げています。その例や検証など一つ一つのTipsを掘り下げているため、読んでいるだけで勉強になることばかりです。

これから現場に入るという方、既に現場に入っているという方は読んでみて損はないでしょう。

Go言語を書く上で見落としがちなTipsをまとめた一冊。
Go言語の仕様から、頻繁に使われるライブラリ(contextとかgo testとか)、配列やスライスの仕組み、並列処理と並行処理、CPUキャッシュ等々、幅広くカバー。
名著です。

購入者のレビューより


電子書籍を読むならAmazon Kindle Unlimitedがおすすめ

Kindle Unlimitedとは、Amazonが提供する電子書籍読み放題サービスです。

Kindle Unlimitedの料金は、月額980円(税込)で利用でき、30日間の無料お試し期間があります。技術書であれば、1冊1,000円以上する本が多いため、1冊読むだけで月額料金の元を取ることができます。

さらには200万冊以上の電子書籍が読み放題です。初回30日間は無料体験があるので合わなかったら無料期間中に退会してしまいましょう。


golangを動画で学ぶ

【Go入門】Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発(Go言語)

まだGo言語の勉強を始めていない方、全くの初心者の方にはこちらのUdemy教材が最もおすすめです。

この教材ではgolangの基礎について網羅的に学ぶことができます。ただ見て学ぶだけでなく、講座の中でアプリ作成まで行うことで学んだことの理解をさらに深めることができます。


現役シリコンバレーエンジニアが教えるGo入門 + 応用でビットコインのシストレFintechアプリの開発

個人的に最も勉強になったのは「現役シリコンバレーエンジニアが教えるGo入門 + 応用でビットコインのシストレFintechアプリの開発」という教材です。
本格的なレクチャーに入る前に、なぜGoなのか、なぜFintechなのかについて説明されていることで、Goの概念や意味について大枠から理解することができます。

以下の記事では筆者が実際に受講したおすすめUdemy教材をまとめています。

※本ページではアフィリエイトリンク(PR)が含まれています


この記事が参加している募集

人生を変えた一冊

わたしの本棚

この記事が気に入ったらサポートをしてみませんか?