ジャーニー
Go (Golang)を学ぶ
Go (Golang)をゼロから学べる無料オンライン講座です。変数、条件分岐、ループ、関数、データ構造、プロジェクト構成を、実践課題、実プロジェクト、AIヒント、修了証明書と一緒に身につけます。
20,350+ 人のcoddersが登録中
このジャーニーに含まれるもの
AIによるコーディングサポート
実践的なインタラクティブレッスン
全レッスンに音声ナレーション付き
知識を確かめるクイズ
無料の修了証明書
シラバス
3 セクション284 レッスン256 チャレンジ1,839 クイズの問題01セクション 1
基礎
必須の概念と基本スキルで強固な基礎を築きましょう学習を始めるGo入門
4 レッスン423- 01Goとは?チャレンジ
- 02Hello Worldチャレンジクイズ音声
- 03Printlnチャレンジクイズ音声
- 04Goのコメントチャレンジクイズ音声
変数と基本データ型
10 レッスン1069- 01変数とはチャレンジクイズ音声
- 02`:=` による型推論チャレンジクイズ音声
- 03整数型 (int)チャレンジクイズ音声
- 04浮動小数点数チャレンジクイズ音声
- 05真偽値 (Boolean)チャレンジクイズ音声
- 06文字列チャレンジクイズ音声
- 07ゼロ値チャレンジクイズ音声
- 08定数チャレンジクイズ音声
- 09命名規則チャレンジクイズ音声
- 10まとめ:変数と型チャレンジ
基本演算子
7 レッスン744- 01算術演算子チャレンジクイズ音声
- 02除算演算子チャレンジクイズ音声
- 03剰余演算子チャレンジクイズ音声
- 04代入演算子チャレンジクイズ音声
- 05複合代入演算子チャレンジクイズ音声
- 06インクリメントとデクリメントチャレンジクイズ音声
- 07まとめ:計算チャレンジ
比較演算子と論理演算子
7 レッスン742- 01比較演算子 - パート1チャレンジクイズ音声
- 02比較演算子 - パート2チャレンジクイズ音声
- 03論理 AND 演算子チャレンジクイズ音声
- 04論理 OR 演算子チャレンジクイズ音声
- 05論理 NOT 演算子チャレンジクイズ音声
- 06演算子の優先順位の基本チャレンジクイズ音声
- 07まとめ - 比較を行うチャレンジ
基本の入出力
5 レッスン532- 01書式付き出力チャレンジクイズ音声
- 02フォーマット動詞チャレンジクイズ音声
- 03型の表示チャレンジクイズ音声
- 04基本的なユーザー入力の取得チャレンジクイズ音声
- 05まとめ:入出力チャレンジ
制御フロー:条件分岐
10 レッスン1069- 01`if` 文チャレンジクイズ音声
- 02`else` キーワードチャレンジクイズ音声
- 03`else if` キーワードチャレンジクイズ音声
- 04`if` における変数のシャドウイングチャレンジクイズ音声
- 05変数の初期化チャレンジクイズ音声
- 06`switch` 文チャレンジクイズ音声
- 07式を伴う `switch`チャレンジクイズ音声
- 08式を伴わない `switch`チャレンジクイズ音声
- 09`fallthrough` キーワードチャレンジクイズ音声
- 10まとめ:条件分岐チャレンジ
制御フロー:ループ
7 レッスン743- 01`for` ループの解説チャレンジクイズ音声
- 02`for` ループ - 基本チャレンジクイズ音声
- 03`for` ループ - 条件のみチャレンジクイズ音声
- 04`break` キーワードチャレンジクイズ音声
- 05`continue` キーワードチャレンジクイズ音声
- 06ネストされたループチャレンジクイズ音声
- 07まとめ:処理の繰り返しチャレンジ
関数
9 レッスン962- 01関数の理解チャレンジクイズ音声
- 02関数の宣言チャレンジクイズ音声
- 03関数の呼び出しチャレンジクイズ音声
- 04関数の引数チャレンジクイズ音声
- 05単一の戻り値を返すチャレンジクイズ音声
- 06複数の戻り値を返すチャレンジクイズ音声
- 07名前付き戻り値チャレンジクイズ音声
- 08関数のスコープの基本チャレンジクイズ音声
- 09まとめ:再利用可能なコードの作成チャレンジ
ポインタ
7 レッスン644- 01ポインタとは?クイズ音声
- 02ポインタ変数の宣言チャレンジクイズ音声
- 03アドレス演算子チャレンジクイズ音声
- 04ポインタのデリファレンスチャレンジクイズ音声
- 05関数でのポインタの使用チャレンジクイズ音声
- 06Nilポインタチャレンジクイズ音声
- 07まとめ:ポインタの理解チャレンジ
複合型:配列
7 レッスン650- 01配列の概要クイズ音声
- 02配列の宣言チャレンジクイズ音声
- 03配列の初期化チャレンジクイズ音声
- 04配列要素へのアクセスチャレンジクイズ音声
- 05`len` による配列の長さチャレンジクイズ音声
- 06配列の反復処理チャレンジクイズ音声
- 07多次元配列チャレンジクイズ音声
複合型:スライス
10 レッスン965- 01スライス入門クイズ音声
- 02スライスリテラルの宣言チャレンジクイズ音声
- 03`make` によるスライスの作成チャレンジクイズ音声
- 04スライスの長さと容量チャレンジクイズ音声
- 05スライス要素へのアクセスチャレンジクイズ音声
- 06要素の追加チャレンジクイズ音声
- 07既存のスライス/配列のスライスチャレンジクイズ音声
- 08スライスの反復処理チャレンジクイズ音声
- 09スライスのコピーチャレンジクイズ音声
- 10まとめ:動的リストチャレンジ
複合型:マップ
10 レッスン965- 01マップの概要クイズ音声
- 02マップリテラルの宣言チャレンジクイズ音声
- 03`make` によるマップの作成チャレンジクイズ音声
- 04キーと値の追加と更新チャレンジクイズ音声
- 05マップの値へのアクセスチャレンジクイズ音声
- 06キーの存在確認チャレンジクイズ音声
- 07マップ要素の削除チャレンジクイズ音声
- 08マップの長さチャレンジクイズ音声
- 09マップの反復処理チャレンジクイズ音声
- 10まとめ:キー・バリューストレージチャレンジ
複合型:構造体
8 レッスン854- 01カスタム型の定義チャレンジクイズ音声
- 02構造体インスタンスの作成チャレンジクイズ音声
- 03構造体フィールドへのアクセスチャレンジクイズ音声
- 04構造体へのポインタチャレンジクイズ音声
- 05構造体の初期化チャレンジクイズ音声
- 06埋め込み構造体チャレンジクイズ音声
- 07匿名構造体チャレンジクイズ音声
- 08まとめ:カスタムデータ構造チャレンジ
エラーハンドリングの基本
8 レッスン858- 01エラーの概念チャレンジクイズ音声
- 02`error` インターフェースチャレンジクイズ音声
- 03エラーを返す関数チャレンジクイズ音声
- 04エラーのチェックチャレンジクイズ音声
- 05シンプルなエラーの作成チャレンジクイズ音声
- 06フォーマット済みエラーの作成チャレンジクイズ音声
- 07基本的なエラーハンドリングチャレンジクイズ音声
- 08まとめ:問題への対処チャレンジ
02セクション 2
論理とフロー
データ構造とフロー制御に焦点を当てた高度な Go プログラミングを習得しましょう。複雑な配列、コレクション、エラーハンドリング、時間管理の扱いを学びます。学習を始める高度な制御フロー
5 レッスン528- 01`fallthrough` を伴う Switch 文チャレンジクイズ
- 02ネストされたループからの Breakチャレンジクイズ
- 03特定のループの Continueチャレンジクイズ
- 04`goto` 文チャレンジクイズ
- 05まとめ:高度なループ制御チャレンジ
構造体とメソッド
6 レッスン439- 01構造体でのメソッド定義チャレンジクイズ
- 02値レシーバチャレンジクイズ
- 03ポインタレシーバチャレンジクイズ
- 04レシーバの選び方クイズ
- 05メソッド vs 関数クイズ
- 06まとめ:構造体の振る舞いチャレンジ
インターフェース(基本)
8 レッスン757- 01インターフェースとは?クイズ
- 02インターフェースの定義チャレンジクイズ
- 03インターフェースの実装チャレンジクイズ
- 04インターフェース型の使用チャレンジクイズ
- 05空のインターフェースチャレンジクイズ
- 06型アサーションチャレンジクイズ
- 07型スイッチチャレンジクイズ
- 08まとめ:図形と振る舞いチャレンジ
プロジェクト:シンプルなタスクリスト
プロジェクト6 レッスン1- 01プロジェクトのセットアップチャレンジ
- 02タスクの追加プロジェクト
- 03タスク一覧の表示プロジェクト
- 04タスクの完了プロジェクト
- 05タスクの削除プロジェクト
- 06全体をまとめるプロジェクト
Mapの詳細
5 レッスン432- 01構造体のMapチャレンジクイズ
- 02Mapの値としてのポインタチャレンジクイズ
- 03Nil Mapの判定チャレンジクイズ
- 04Mapの比較クイズ
- 05まとめ - 単語出現頻度カウンターチャレンジ
Goらしい書き方:セット
7 レッスン648- 01Goにおけるセットの慣用法クイズ
- 02セットの作成チャレンジクイズ
- 03セットへの追加チャレンジクイズ
- 04要素の存在確認チャレンジクイズ
- 05セットからの削除チャレンジクイズ
- 06セットの反復処理チャレンジクイズ
- 07まとめ:一意なユーザー名チャレンジ
エラーハンドリング詳説
7 レッスン650- 01カスタムエラー型チャレンジクイズ
- 02%w によるエラーのラッピングチャレンジクイズ
- 03errors.Is によるアンラップチャレンジクイズ
- 04errors.As によるアンラップチャレンジクイズ
- 05panic の理解クイズ
- 06recover の使用チャレンジクイズ
- 07まとめ:安全な除算チャレンジ
プロジェクト:簡易在庫管理
プロジェクト6 レッスン1- 01プロジェクトの概要チャレンジ
- 02在庫の確認プロジェクト
- 03新規アイテムの追加プロジェクト
- 04在庫数の更新プロジェクト
- 05レポートの生成プロジェクト
- 06全体のまとめプロジェクト
パッケージとスコープ
7 レッスン550- 01パッケージとは?クイズ
- 02エクスポートと非エクスポートチャレンジクイズ
- 03シンプルなパッケージの作成チャレンジクイズ
- 04パッケージのエイリアスチャレンジクイズ
- 05ブランク識別子 `_`クイズ
- 06`init` 関数チャレンジクイズ
- 07まとめ:ユーティリティの作成チャレンジ
時間の操作
8 レッスン857- 01現在時刻の取得チャレンジクイズ
- 02特定の日時の作成チャレンジクイズ
- 03日時のフォーマットチャレンジクイズ
- 04日時文字列のパースチャレンジクイズ
- 05時間の期間チャレンジクイズ
- 06時間の演算チャレンジクイズ
- 07スリープとティッカーチャレンジクイズ
- 08まとめ:簡易タイマーチャレンジ
最終チャレンジ
3 レッスン3- 01基本の連絡先リストチャレンジ
- 02シンプルな数値バリデーターチャレンジ
- 03ユニークなアイテムコレクターチャレンジ
03セクション 3
オブジェクト指向プログラミング
クラス、オブジェクト、再利用可能な構造を使ってコードを整理する方法を学びましょう学習を始めるGo オブジェクト指向の基礎
11 レッスン1189- 01外部ファイルチャレンジクイズ
- 02Go ワークスペースとモジュールチャレンジクイズ
- 03パッケージとインポートチャレンジクイズ
- 04公開された名前と非公開の名前チャレンジクイズ
- 05Go におけるオブジェクト指向入門チャレンジクイズ
- 06クラスとしての構造体チャレンジクイズ
- 07構造体へのメソッド定義チャレンジクイズ
- 08ポインタレシーバと値レシーバチャレンジクイズ
- 09構造体の初期化チャレンジクイズ
- 10コンストラクタ関数チャレンジクイズ
- 11まとめ:簡易計算機チャレンジ
型と構造体の徹底解説
7 レッスン752- 01基本型と複合型チャレンジクイズ
- 02カスタム型の定義チャレンジクイズ
- 03構造体タグチャレンジクイズ
- 04匿名の構造体チャレンジクイズ
- 05構造体のネストチャレンジクイズ
- 06ゼロ値とデフォルト値チャレンジクイズ
- 07まとめ:連絡帳アプリチャレンジ
ポインタとメモリ
6 レッスン644- 01Goのポインタの基本チャレンジクイズ
- 02構造体へのポインタチャレンジクイズ
- 03値渡し vs 参照渡しチャレンジクイズ
- 04new() 関数チャレンジクイズ
- 05Goのガベージコレクションチャレンジクイズ
- 06復習 - 連結リストの構築チャレンジ
インターフェース
9 レッスン969- 01インターフェース入門チャレンジクイズ
- 02暗黙的な実装チャレンジクイズ
- 03契約としてのインターフェースチャレンジクイズ
- 04空のインターフェース (any)チャレンジクイズ
- 05型アサーションチャレンジクイズ
- 06型スイッチチャレンジクイズ
- 07インターフェースの合成チャレンジクイズ
- 08Stringer と Error インターフェースチャレンジクイズ
- 09まとめ - 図形計算機チャレンジ
継承よりコンポジション
7 レッスン749- 01Goに継承がない理由チャレンジクイズ
- 02構造体の埋め込みの基本チャレンジクイズ
- 03メソッドの昇格チャレンジクイズ
- 04複数の構造体の埋め込みチャレンジクイズ
- 05埋め込み vs 集約チャレンジクイズ
- 06埋め込まれたメソッドのシャドウイングチャレンジクイズ
- 07まとめ - 従業員の階層構造チャレンジ
Goにおけるポリモーフィズム
6 レッスン643- 01インターフェースによるポリモーフィズムチャレンジクイズ
- 02Goにおけるダックタイピングチャレンジクイズ
- 03インターフェースの充足ルールチャレンジクイズ
- 04ポリモーフィックなコレクションチャレンジクイズ
- 05依存性の注入チャレンジクイズ
- 06まとめ - 決済プロセッサチャレンジ
カプセル化
5 レッスン536- 01公開フィールドと非公開フィールドチャレンジクイズ
- 02パッケージレベルのカプセル化チャレンジクイズ
- 03Getter & Setter メソッドチャレンジクイズ
- 04Go における情報隠蔽チャレンジクイズ
- 05まとめ - 学生の記録チャレンジ
エラー処理とOOP
7 レッスン754- 01error インターフェースチャレンジクイズ
- 02カスタムエラー型チャレンジクイズ
- 03エラーラッピング (fmt.Errorf)チャレンジクイズ
- 04センチネルエラーチャレンジクイズ
- 05errors.Is() と errors.As()チャレンジクイズ
- 06Panic、Defer、Recoverチャレンジクイズ
- 07復習 - ファイルパーサーチャレンジ
並行処理とオブジェクト指向
8 レッスン863- 01Goroutine の基本チャレンジクイズ
- 02Channel と通信チャレンジクイズ
- 03バッファあり Channel とバッファなし Channelチャレンジクイズ
- 04select 文チャレンジクイズ
- 05sync.Mutex と sync.RWMutexチャレンジクイズ
- 06sync.WaitGroupチャレンジクイズ
- 07スレッドセーフな構造体設計チャレンジクイズ
- 08まとめ - Worker Poolチャレンジ
ジェネリクス (Go 1.18+)
6 レッスン645- 01ジェネリクス入門チャレンジクイズ
- 02型パラメータチャレンジクイズ
- 03型制約チャレンジクイズ
- 04ジェネリック構造体チャレンジクイズ
- 05ジェネリックメソッドの回避策チャレンジクイズ
- 06まとめ:ジェネリックコレクションチャレンジ
標準ライブラリとOOP
6 レッスン644- 01io.Reader と io.Writerチャレンジクイズ
- 02sort.Interfaceチャレンジクイズ
- 03fmt.Stringer インターフェースチャレンジクイズ
- 04encoding/json と構造体チャレンジクイズ
- 05http.Handler インターフェースチャレンジクイズ
- 06まとめ:REST API モデルチャレンジ
高度なOOPの概念
6 レッスン655- 01Functional Options パターンチャレンジクイズ
- 02Go における Builder パターンチャレンジクイズ
- 03メソッドチェーンチャレンジクイズ
- 04型エイリアスと型定義チャレンジクイズ
- 05リフレクションの基本チャレンジクイズ
- 06コード生成の概要チャレンジクイズ
デザインパターン パート1
6 レッスン651- 01デザインパターン入門チャレンジクイズ
- 02Singleton パターンチャレンジクイズ
- 03Factory パターンチャレンジクイズ
- 04Abstract Factory パターンチャレンジクイズ
- 05Observer パターンチャレンジクイズ
- 06Strategy パターンチャレンジクイズ
デザインパターン パート2
7 レッスン764- 01Commandパターンチャレンジクイズ
- 02Adapterパターンチャレンジクイズ
- 03Decoratorパターンチャレンジクイズ
- 04Template Methodパターンチャレンジクイズ
- 05Stateパターンチャレンジクイズ
- 06Compositeパターンチャレンジクイズ
- 07DecoratorとしてのMiddlewareチャレンジクイズ
プロジェクト:図書管理
プロジェクト7 レッスン1- 01プロジェクトの概要と構成チャレンジ
- 02BookとUserの構造体プロジェクト
- 03貸出システムプロジェクト
- 04Interfaceによる検索機能プロジェクト
- 05JSON永続化レイヤープロジェクト
- 06管理者用CLIインターフェースプロジェクト
- 07テストと統合プロジェクト
最終課題
3 レッスン3- 01eラーニングプラットフォームチャレンジ
- 02銀行システムチャレンジ
- 03ゲームキャラクターシステムチャレンジ
CoddyでGo (Golang)を学ぶ理由
- Go (Golang)の無料オンライン講座です。インストールも環境構築も不要で、ブラウザを開いて最初のレッスンから実践できます。
- 単なるチュートリアルではなく、各トピックにコードを書く課題があり、手を動かしながらGo (Golang)を理解できます。
- Go (Golang)の演習でつまずいたときは、AIヒントが答えを丸ごと渡さずに次の考え方を示します。
- 講座を修了すると、LinkedInや履歴書に追加できるGo (Golang)の無料修了証明書を受け取れます。
Go (Golang)学習についてのよくある質問
Go (Golang)は初心者でも学びやすいですか?
はい。未経験でもGo (Golang)を始められます。Coddyでは短い演習に分けて、構文を理解し、変数、条件分岐、ループ、関数、データ構造、プロジェクト構成を練習しながら少しずつ自信をつけられます。
Go (Golang)の習得にはどのくらい時間がかかりますか?
Go (Golang)の基礎は、毎日練習すれば1〜2週間でつかめます。実際のプロジェクトを作れる手応えを得るには、ペースに応じて1〜3か月ほど見るとよいでしょう。
Go (Golang)をオンラインで無料学習できますか?
CoddyではGo (Golang)の無料オンライン講座を提供しています。レッスン、コード課題、クイズ、プロジェクトがあり、すべてブラウザで動きます。
Go (Golang)を早く学ぶには?
最短ルートは毎日コードを書くことです。Coddyでは短い説明のあとすぐ演習し、必要に応じてAIヒントを使えるため、長い動画を見るより実践時間を増やせます。
修了後にGo (Golang)の証明書はもらえますか?
はい。CoddyでGo (Golang)講座を完了すると、LinkedInや履歴書に追加できる無料の修了証明書を受け取れます。
Go (Golang)を学んだ後に何を作れますか?
講座の後は、便利なスクリプト、小さなアプリ、自動化、簡単なゲーム、ポートフォリオに載せられるプロジェクトを作れるようになります。さらに高度なテーマへ進むための土台もできます。