環境構築から、変数・制御構文・スライスとマップ・関数とポインタ・構造体とインターフェース・エラー処理・パッケージ分割・ジェネリクス・並行処理・テストまで。全50レッスンで「標準ライブラリだけでテスト付きのツールを 1 本組み立てられる」ところまで進みます。コードと実行結果はすべて Go 1.27.1 で実際に動かしたものです。
全50レッスンを7つの章に分けています。第1章から順に進めるのがおすすめですが、
気になるところだけ拾い読みしてもかまいません。
※ ブラウザ内で実行できないため、手元の go run か Go Playground(go.dev/play)で試してください。
Go が動く仕組みを押さえ、go run で自分の手で実行できる状態にします。変数・ゼロ値・数値と文字列・標準入力、そしてコンパイルエラーの読み方まで進みます。
条件分岐とくり返しを扱います。括弧のない if、落ちない switch、for しかないループ、ラベルによる脱出。最後は数当てゲームを 1 本組み立てます。
配列・スライス・マップ・多次元でデータをまとめます。Go の要である「スライスは配列を共有する」性質をここで正面から扱い、最後に売上データを集計します。
処理に名前を付けて切り出します。複数戻り値と (結果, error)、可変長引数、クロージャ、defer、そしてポインタと再帰まで進みます。
自分でデータ型を作ります。struct と method、継承ではない埋め込み、そして implements を書かないインターフェース。標準ライブラリの仕組みに自分の型を載せるところまで。
例外のない言語で失敗をどう扱うかを体系的に学びます。%w によるラップ、panic と recover、ファイルと JSON。最後は構造体で在庫管理を設計します。
パッケージ分割・ジェネリクス・並行処理・テストを扱います。最後に全50回の内容を 1 つにまとめ、次に学ぶべきことを示します。
全50レッスンを終えたら、次は同じくコンパイル型で安全側に倒す Rust 入門コース や、コンテナで配る力を付ける Docker 入門コース へ。メンバーシップで全コースが解放されます。