Golang をマスターするための最良のリソースの一部

Golang をマスターするための最良のリソースの一部

この記事では、Golang を学習しマスターするためにインターネット上で利用できる最高のリソースをいくつかリストアップします。

ユーザーごとに異なる学習モードの好みがあるため、ここではテキストベースの記事、チュートリアル、ビデオ、および Golang に関する人気のコースを取り上げます。

Golang は人気が非常に急速に高まっており、一度探索し始めると Go の虜になるでしょう。

開発者ガイド

50,000 人の生徒がいるこのパックは Go を基礎から学ぶのに最適な完全パックの 1 つです。このコースは高度にテストされており、ほとんどの学生にとってうまく機能します。一度購入すると、生涯アクセスできます。完全なビデオ コースから学習したい場合は、これがまさに必要なものです。

このコースは、初心者や入門概念をもう一度学びたい人に最適です。このコースには、追加のコード リソースと課題を含む 9 時間のオンデマンド ビデオが含まれています。

このコースで取り上げるトピックの一部は次のとおりです。

  • 言語のセットアップ、インストール、および基本。
  • パッケージとファイル構造
  • 変数、関数、配列、スライス
  • マップ、構造体、インターフェイスを詳細にカバー
  • チャネルとゴールーチン (同時プログラミング)

ブートキャンプ

300 以上のレクチャーがある Udemy の完全な Bootcamp コースは間違いなく良い買い物であり、Golang を学ぶのに最適な場所です。次のようなアプリケーションを構築することで学習します。

  • ログパーサー
  • ファイルスキャナー
  • スパムマスカー

これに加えて、このコースでは 1000 以上の実践的な演習が提供されます。

このコースには、構造体、インターフェイス、チャネルなどの Go の基本概念をカバーすることに加えて、バウンドするボールをアニメーション化する方法を学ぶ興味深いプロジェクトがあります。

コース終了時には修了証明書も受け取ります。

囲碁ツアー

私は Golang の公式ドキュメント、ブログ、チュートリアルの大ファンです。 この対話型コースは無料で、ローカルでのセットアップは必要ありません。 Web サイトを開いて、各トピックの実践的なコードを使用して基本から学習を始めてください。

これは、ただ探求したいだけで、セットアップなしで基本を学びたい場合に開始する必要があるコースです。

囲碁ツアー
囲碁ツアー
囲碁ツアー

例を見てみましょう

これは完全なコースというわけではありませんが、基本を忘れたときに行く場所です。このサイトでは、入門テキストと完全な実行例ですべての概念をカバーしています。サイトは可能な限りシンプルなので、学習に集中できます。基本的な紹介記事のいくつかは次のような内容です。

  • 変数と定数
  • のために
  • If/Else とスイッチ
  • 配列とスライス
  • 地図
  • 範囲
  • 機能

必要なトピックがほぼすべて揃っています。ぜひチェックしてブックマークして参考にしてください。

Y分でXを学ぶ

基本を簡単に説明したい場合は、 「Learn X in Y minutes」はGo だけでなく、ほぼすべてのプログラミング言語にとって素晴らしいリソースです。コミュニティ主導型で、多くのトピックを 1 ページでカバーしています。 Go が上手くなったら、ぜひ貢献してください。

以下は、1 つの関数での同時プログラミングを説明するチュートリアルのコード スニペットです。

 // We'll use inc to increment some numbers concurrently.
func learnConcurrency() {
    // Same make function used earlier to make a slice. Make allocates and
    // initializes slices, maps, and channels.
    c := make(chan int)
    // Start three concurrent goroutines. Numbers will be incremented
    // concurrently, perhaps in parallel if the machine is capable and
    // properly configured. All three send to the same channel.
    go inc(0, c) // go is a statement that starts a new goroutine.
    go inc(10, c)
    go inc(-805, c)
    // Read three results from the channel and print them out.
    // There is no telling in what order the results will arrive!
    fmt.Println(<-c, <-c, <-c) // channel on right, <- is "receive" operator.

    cs := make(chan string)       // Another channel, this one handles strings.
    ccs := make(chan chan string) // A channel of string channels.
    go func() { c <- 84 }()       // Start a new goroutine just to send a value.
    go func() { cs <- "wordy" }() // Again, for cs this time.
    // Select has syntax like a switch statement but each case involves
    // a channel operation. It selects a case at random out of the cases
    // that are ready to communicate.
    select {
    case i := <-c: // The value received can be assigned to a variable,
        fmt.Printf("it's a %T", i)
    case <-cs: // or the value received can be discarded.
        fmt.Println("it's a string")
    case <-ccs: // Empty channel, not ready for communication.
        fmt.Println("didn't happen.")
    }
    // At this point a value was taken from either c or cs. One of the two
    // goroutines started above has completed, the other will remain blocked.

    learnWebProgramming() // Go does it. You want to do it too.
}

非常に簡潔かつ的確なので、Golang に関する特定のトピックの概要を簡単に知りたい場合は、ぜひ試してみてください。

ゴータイム

音声学習のファンなら、 Gotimeが最適なポッドキャストです。多くの優秀な開発者が来て、実際の知識や企業での Go の使用方法を共有します。著名な人々が学んだことをコミュニティと共有する GopherCon (golang カンファレンス) もチェックしてください。

これらのコミュニティでは、Go に関する最新のトレンドや改善点について話し合います。

ここに人気のポッドキャストをいくつか追加します –

とても良い本がたくさんあります。お気に入りのいくつかをここに追加します –

ブログ

Golang に関する非常に優れたブログがいくつかあります。メディアに関する記事もたくさんあるので、調べてみましょう。役立つものをいくつかここで共有します –

YouTube

ビデオベースの学習に興味がありますか?

もちろん、freeCodeCamp による初心者向けの Golang チュートリアルをチェックしてください。

結論

初心者で Golang コミュニティに参加している場合は、上記のコースのいずれかを完了することをお勧めします。また、学んだことを世界と共有し、Go のさらなる向上に貢献してください。 Go の旅に役立つ何かを学んで、最高の成果が得られることを願っています。

「 Golang をマスターするための最良のリソースの一部」についてわかりやすく解説!絶対に観るべきベスト2動画

【プログラミング入門】これからはじめるGo(Go言語/golang)- tenntenn Conference 2022
初めてgolangで大規模Microserviceを作り上げ得た教訓