
Go言語の初心者向けの学習教材でおすすめはないのかな?

私が実際にUdemyで購入した教材をレビューしますね。
プログラミング言語を学習しようと教材選びは迷うものです。
特にGo言語の学習教材は、他のプログラミング言語よりも学習教材の選択肢は少ないのが現状です。
今回は私が実際に購入し実践しているGo言語のUdemy教材2本のうちの、もっとも初心者向けのGolang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発を受講した感想をお伝えしていきます。
あなたのGo言語学習教材の比較検討のひとつとして参考にしてください。

Udemyの教材を購入する時は絶対にセール中ですよ!
【Udemy】Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発について
Udemyでは数少ないGo言語の日本語教材で初心向けの「Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発」を忖度なしでレビューしていきます。
概要
Udemyの「Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発」は、エンジニアのM.A EduTech(@geniusmaaakun)さんという方が講師です。

日本の方ですよ。
エンジニアのM.A EduTechさんが提供するUdemyのコースでは、
を主に扱っており、Go言語の基礎から応用まで網羅している講義内容です。
実際の講義時間は19時間(2021年9月現在)となっており、Udemy教材全体を通してもボリュームがある内容となっています。
では、このUdemyのGo言語コースを受講して学べることを解説していきましょう。
どんなことを学ぶことができるのか
この講座を通して学べることは、
以上です。
Go言語が全然理解できていなくても基本からじっくりと学習することができ、その基本を活用して簡易的なToDoアプリ作成まで実践できます。
アプリ作成まで理解できるようになれば、Go言語に対して自信がついていることを実感できます。
特に、アプリ開発においてデータベース操作は必須です。
データベース操作の基礎となる CRUD
に関しても触れていますので、実際にテキストエディタでコードを書き動きを確認できるのもうれしい点です。
そして、当初、並行処理の講義は基本講義だけでしたが、並行処理だけで6時間を超える講義内容が追加コンテンツとなっています。
講師のM.A EduTechさんは当初、Go言語の並行処理だけを別講座で販売する予定でした。
ですが、この講座の追加コンテンツとして現在進行系で動画が追加されています。
並行処理は他のプログラミング言語では実装が難しく、Go言語では比較的楽に実装されますが並行処理の概念自体が難しいので、がっつりGo言語の並行処理を学習したい方にはおすすめです。

私は、まだ並行処理の講座を全て受講していません…
それでは次に、このUdemyのGo言語コースの良い点と悪い点をお伝えしていきます。
UdemyのGo言語基礎入門+TodoWebアプリ開発の率直な感想
講師の方も手探りで講座を作成していますので、良い点と悪い点は必ずあります。
私が講座を受講しての(受講中…)率直な感想をお伝えしていきましょう。
良い点
良い点として下記にまとめてみました。
それでは、それぞれについてお伝えしていきましょう。
Go言語初学者でも基礎から体系的に学べる
Go言語の学習教材で、全くのプログラミング初心者向けの教材は見かけることが少ないのが実情です。
Go言語を学習している方は、最低ひとつのプログラミング言語を習得している方や現役バリバリのエンジニアが多く難しいコンテンツだらけです。
そんな環境の中、Udemy教材で初心者でもGo言語を基礎文法から体系的に学べるのは貴重です。
プログラミング言語の学習は文法を学んでいる時は、楽しさを感じることなくモチベーションも下がることもあります。
それでも、講座の最後に今まで学習してきた集大成として、簡易的なアプリ開発でプログラミングの楽しさを実感することができます。
Go言語の主要な標準パッケージについて理解できる
Go言語には豊富な標準パッケージのおかげで、実装が難しいプログラムも容易にコードを書くことを支援してくれます。
標準パッケージはGo言語の公式サイトでも、どんな機能の標準パッケージがあるか確認できますが英語です…
この講座では、頻繁に使用するであろう標準パッケージの解説をコードで確認しながら学習できます。
ただ、標準パッケージの動画を連続で見ているとモチベーションも下がってくるので、コードを書いている時に出てきた標準パッケージを確認するような感じで受講すると良いでしょう。
Go言語でアプリ開発を実践できる
Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発で作成するのは簡易的なToDoアプリです。
実はToDoアプリは、他のプログラミング言語の初心者向け講座で最終的に作成するアプリの定番なんです。
ToDoアプリで学べることは、WEBアプリの基本が詰まっています。
上記の機能を実装するには、講座で学習してきた基本が生きてきます。
あと、アプリひとつを作成できた達成感を感じられるのは、とてもうれしいものです。
1レッスンの時間が短く(長くても10分程度)復習もしやすい
1レッスンの時間というのは何気に重要です。
限られた学習時間の中で1レッスンが30分超えるものだと、コードを書いて動作を確認してとなれば倍のの時間を確保しなければいけません。
講座を少しでも前に進めるためにも、1レッスン当たりの時間の長さは確認すべき点です。

あれっ!これ何だっけ?
という時も、時間が短い動画であれば確認も楽ですし、復習もしやすい学習環境が整います。
習得が難しい並行処理も体系的に学べる
基本を学んだあとに少し余裕ができたら、並行処理に関しても他の講座や書籍を購入することなく学習することができます。
並行処理の講座も1レッスン当たりの時間が10分程度に収まっていますので、習得の状況に応じて進めることができます。
質問への回答が早い!
Udemyの良さは、わからないところを講師に質問できる点です。

特にGo言語はGoogle検索で調べてもわからないことも本当に多いです。
私もちょっと疑問なところがあって、Googleで検索しても良い解答を見つけられない時に質問したのですが、次の日には回答してもらえました。
あと、質問するのを怖がっている方も多いでしょうが、このQ&Aを充実させることは講座の成長にもなります。
講師に質問する前に、Q&Aを読んでわからないところを理解できることも多々あります。
その点においても、質問への回答が早いのはうれしいですね。
惜しかった点
それでは、あくまでも私が感じた惜しかった点を下記にまとめました。
講座の音声レベルが低すぎる
これは何気にストレスになります。
他の動画とかではちょうど良い音量でも、この講座を視聴する時だけ音量を上げなければいけないのは体系的に学ぶ長時間の講座では改善してほしいところです。
音量上げればいいだけなんですが、これ毎回だとストレスになります。
たまに理解できない難しい日本語での説明がある
難しい論文を読んでいるような理解できない日本語での説明がたまにあり、理解に苦しむ場面もありました。
多分、難しい日本語の説明じゃないと、説明するだけでとんでもない時間がかかるからでしょう。
それと、Go言語自体、日本語の情報が少なくて適切な日本語が見つからないからとも考えられます。
私は無理に理解しようとせずに、テキストエディタでコードを書いて動きを確認して理解するようにしました。

Go言語の基礎部分では、全然、この対処で問題ありません。
専門用語がいきなり飛び出して理解できない場面がある
これは、この講座に限ったことではなくてUdemyの講座や書籍でもよくあることです。
初心者向けにできるだけわかりやすい言葉を選んでいるのでしょうけど、普段使用している専門用語が自然に出るのは仕方ないのかなって思っています。
逆に言えば、受講する側が専門用語を覚えていく姿勢が大事なのでしょう。
ポインタの説明が不十分
ポインタといえばC言語では多くの方が挫折する箇所でもあります。
Go言語ではポインタを使用しますが、C言語ほどの活用はありません。
この講座でポインタの説明は10分…

私は一度、ここで挫折しました…
私はポインタを理解するためにC言語の基礎部分を学習し、Go言語の学習をした経緯があります。
ポインタに関しては当ブログの記事を参考にしていただくか、私がポインタを攻略した教材などのまとめ記事をアップする予定です。
【Udemy】Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発を受講する時のポイント
講座の良い点や悪い点をお伝えしてきましたが、Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発を受講する上で最低限押さえておくポイントをお伝えしていきます。
VSCodeの基本的な使い方は知っておこう
VSCodeは使い方を知れば知るほど便利なテキストエディタです。
最低限のフォルダ管理やファイルの作成などは理解しておきましょう。
あと、講座ではターミナルを別に開いてプログラムを実行していますが、私はVSCodeのターミナルを使用してプログラムを実行しています。
限られた画面領域を有効に使うためにも、VSCodeでのターミナル操作をおすすめいたします。
最低限のLinuxコマンドは覚えておこう
最低限と言ってもディレクトリの移動コマンドの cd
(チェンジディレクトリ)だけは覚えておいた方が講座を受講していく上で楽です。
私自身も頻繁に使用していたコマンドです。
標準パッケージと並行処理の講座は全部受講する必要なない
標準パッケージでいえば、講座内で使用したパッケージに関しては復習の意味でも受講する必要はあります。
しかし、他の標準パッケージに関しては、あなたが必要になった時に受講した方が理解度も上がるはずです。
標準パッケージの講座時間で2時間41分ですから、標準パッケージだけ連続して受講するのはモチベーションは下がります。
必要に応じて選択して受講しましょう。
あと、並行処理に関しては基礎部分の講座をまずは理解しておけば十分です。
そうでないと、私がポインタでGo言語を挫折したように挫折する可能性もあります。
Udemyは視聴期限が無制限ですから、まずはToDoアプリを完成させることを目標としましょう。
【Udemy】Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発を受講した後は?
A Tour of Goに挑戦する!
Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発を受講したあとは、一度、Go言語公式の A Tour of Go に挑戦してみましょう。
A Tour of GoはGo言語の初学者が最初に受講するのにふさわしいコンテンツとされていますが、最初は丁寧なんですが後半の方はほとんど解説がありません…
ですから、この講座で基礎を理解したら一通り学習するのが良いでしょう。
他の書籍やUdemy教材に挑戦する!
講座で作成したToDoアプリだけでは物足りなさを感じるはずです。
UdemyでもWEBサービスから情報を取得してアプリに反映させる開発やドローン開発、ブロックチェーンなどの講座もありますので違う分野のアプリ開発に挑戦することでGo言語の可能性を広げることができるでしょう。
【まとめ】Golang基礎入門 + 各種ライブラリ + 簡単なTodoWebアプリケーション開発
Go言語の学習教材が少ない中、初心者でも受講できる貴重なUdemy教材です。
Go言語を学びたい初学者であれば、ぜひ、この講座からGo言語学習をスタートしてほしいと思っています。
なんの学習教材でも同じなのですが、講座だけで理解するのは難しいです。
わからないことはGoogleで検索したり、本当にわからなければ質問するという少しの行動力は必要です。
それでも、Go言語の可能性と楽しさを教えてくれる講座でした。
comment