人気ジャーニー
C#を学ぶ
無料で使える、インタラクティブなオンラインC#講座。すべてのレッスンで実際にC#を書きます——シンタックス、クラス、継承、インターフェース、LINQまで。実践的なC#コード例、つまずいたときのAIヒント、そして修了時には無料の修了証明書がついてきます。
108,642+ 人のcoddersが登録中
- 初心者向け
AIによるコーディングサポート
実践的なインタラクティブレッスン
全レッスンに音声ナレーション付き
知識を確かめるクイズ
無料の修了証明書
シラバス
セクション 1
基礎
セクションを始める開始開く閉じる基本的な概念と基本スキルを学び、強固な基礎を築きましょうイントロダクション
4 レッスン323- 01C#チャレンジ
- 02Hello World!チャレンジクイズ
- 03コメントクイズ
- 04プログラムの基本構造チャレンジクイズ
変数 パート1
5 レッスン539- 01数値チャレンジクイズ
- 02文字型チャレンジクイズ
- 03文字列チャレンジクイズ
- 04真偽値チャレンジクイズ
- 05型宣言チャレンジクイズ
変数 パート2
5 レッスン431- 01Varチャレンジクイズ
- 02定数チャレンジクイズ
- 03命名規則クイズ
- 04まとめ - 変数の初期化チャレンジ
- 05型変換チャレンジクイズ
演算子 パート1
5 レッスン438- 01算術演算子チャレンジクイズ
- 02剰余演算子チャレンジクイズ
- 03インクリメント/デクリメントチャレンジクイズ
- 04後置インクリメント/デクリメントクイズ
- 05算術演算の短縮記法チャレンジクイズ
演算子 パート2
5 レッスン531- 01比較演算子チャレンジクイズ
- 02論理演算子 パート1チャレンジクイズ
- 03論理演算子 パート2チャレンジクイズ
- 04復習 - シンプルな論理チャレンジ
- 05論理演算子 パート3チャレンジクイズ
条件分岐
6 レッスン638- 01if 文チャレンジクイズ
- 02if - else 文チャレンジクイズ
- 03switch 文チャレンジクイズ
- 04三項演算子チャレンジクイズ
- 05復習 - if elseチャレンジ
- 06ネストされた if - elseチャレンジクイズ
基本の入出力
6 レッスン633- 01基本的な出力チャレンジクイズ
- 02文字列補完チャレンジクイズ
- 03入力の読み取りチャレンジクイズ
- 04パースチャレンジクイズ
- 05復習 - 120までチャレンジ
- 06復習 - True or Falseチャレンジ
電卓アプリ
プロジェクト4 レッスン1- 01ウェルカムメッセージチャレンジ
- 02数値の取得プロジェクト
- 03基本演算プロジェクト
- 04フォーマットされた出力プロジェクト
ループ
8 レッスン752- 01for文チャレンジクイズ
- 02while文チャレンジクイズ
- 03do-while文チャレンジクイズ
- 04break文チャレンジクイズ
- 05continue文チャレンジクイズ
- 06ネストしたループチャレンジクイズ
- 07無限ループクイズ
- 08まとめ - 動的入力チャレンジ
メソッド (関数)
6 レッスン641- 01メソッドの宣言チャレンジクイズ
- 02メソッドの引数チャレンジクイズ
- 03戻り値の型チャレンジクイズ
- 04オプション引数チャレンジクイズ
- 05復習 - バリデーション関数チャレンジ
- 06void メソッドチャレンジクイズ
配列の基礎
6 レッスン629- 01配列の宣言チャレンジクイズ
- 02要素へのアクセスチャレンジクイズ
- 03配列の変更チャレンジクイズ
- 04配列のメソッドチャレンジクイズ
- 05復習 - Product Arrayチャレンジ
- 06復習の編集 - Reversed Arrayチャレンジ
文字列操作
3 レッスン324- 01文字列メソッド パート1チャレンジクイズ
- 02文字列メソッド パート2チャレンジクイズ
- 03文字列のフォーマットチャレンジクイズ
コレクションの反復処理
3 レッスン323- 01forループの使用チャレンジクイズ
- 02foreachループチャレンジクイズ
- 03一般的な配列操作チャレンジクイズ
最終チャレンジ
3 レッスン38- 01数値のパターンチャレンジクイズ
- 02パターン検索チャレンジ
- 03成績計算プログラムチャレンジ
セクション 2
ロジックとフロー
セクションを始める開始開く閉じるデータ構造とフロー制御に焦点を当てた高度な C# プログラミングをマスターしましょう。複雑な配列、コレクション、エラーハンドリング、時間管理の扱いを学びます。Multi-dimensional Arrays
7 レッスン750- 012D Arrays Basicsチャレンジクイズ
- 02Declaring and Initializing 2Dクイズ
- 03Accessing 2D Array Elementsチャレンジクイズ
- 04Nested Loops with 2D Arraysチャレンジクイズ
- 05Jagged Arraysチャレンジクイズ
- 06Common Matrix Operationsチャレンジマスタリークイズ
- 07Recap - Multi-dimensionalチャレンジ
Advanced Decision Making
5 レッスン932- 01Multiple Conditionsチャレンジマスタリークイズ
- 02Complex Boolean Logicチャレンジマスタリークイズ
- 03If vs. Switch Comparisonチャレンジマスタリークイズ
- 04Nested Switch Statementsチャレンジマスタリークイズ
- 05Recap - Advanced Decisionsチャレンジ
Loop Enhancements
5 レッスン632- 01Loop Performanceチャレンジクイズ
- 02Iterating Complexチャレンジクイズ
- 03Each Loop Typeチャレンジマスタリークイズ
- 04Refactoring Loopsチャレンジクイズ
- 05Recap - Optimized Loopsチャレンジ
Flow Control Techniques
5 レッスン938- 01Early Returnsチャレンジクイズ
- 02Guard Clausesチャレンジマスタリークイズ
- 03Jump Statements (goto)チャレンジマスタリークイズ
- 04Break and Continueチャレンジマスタリークイズ
- 05Flatten Nested Conditionalsチャレンジマスタリークイズ
Exception Handling
8 レッスン1160- 01Try-Catch Basicsチャレンジマスタリークイズ
- 02Exception Typesチャレンジクイズ
- 03Multiple Catch Blocksチャレンジマスタリークイズ
- 04Working with Filesチャレンジクイズ
- 05Finally Blockチャレンジマスタリークイズ
- 06Using vs. Try-Finallyチャレンジクイズ
- 07Custom Exceptionsチャレンジクイズ
- 08Recap - Error Handlingチャレンジ
Null Handling
5 レッスン832- 01Null Reference Basicsチャレンジマスタリークイズ
- 02Nullable Value Typesチャレンジクイズ
- 03Null Checking Patternsチャレンジマスタリークイズ
- 04Defensive Programmingチャレンジマスタリークイズ
- 05Recap - Null Safetyチャレンジ
Logical Operators Advanced
4 レッスン723- 01Short-Circuit Evaluationチャレンジマスタリークイズ
- 02Conditional Logical Operatorsチャレンジマスタリークイズ
- 03Operator Precedenceチャレンジマスタリークイズ
- 04Recap - Advanced Operatorsチャレンジ
Data Analysis System
プロジェクト6 レッスン1- 01Data Collection Setupチャレンジ
- 02Data Entry Logicプロジェクト
- 03Data Analysisプロジェクト
- 04Grading Logicプロジェクト
- 05Report Generationプロジェクト
- 06 Error Handlingプロジェクト
HashMap Part 1
6 レッスン536- 01What is a HashMap?クイズ
- 02Declare a HashMapチャレンジクイズ
- 03Check If Key Existsチャレンジクイズ
- 04Accessing Valuesチャレンジクイズ
- 05Modifying Dictionariesチャレンジクイズ
- 06Recap - HashMapチャレンジ
HashMap Part 2
4 レッスン415- 01HashMap Methodsチャレンジクイズ
- 02Nested HashMapチャレンジクイズ
- 03Recap - Manage Warehouseチャレンジ
- 04Recap - HashMap Operationsチャレンジ
HashSet Part 1
6 レッスン537- 01What is a HashSet?クイズ
- 02Adding an Elementチャレンジクイズ
- 03Removing an Elementチャレンジクイズ
- 04Checking if an Element Existsチャレンジクイズ
- 05Empty and Sizeチャレンジクイズ
- 06Recap - HashSetチャレンジ
HashSet Part 2
5 レッスン539- 01Math - Union of HashSetsチャレンジクイズ
- 02Math - Intersection of HashSetチャレンジクイズ
- 03Math - Set Differenceチャレンジクイズ
- 04Math - Symmetric Differenceチャレンジクイズ
- 05Iterating Over Setsチャレンジクイズ
セクション 3
オブジェクト指向プログラミング
セクションを始める開始開く閉じるクラス、オブジェクト、再利用可能な構造を使ってコードを整理する方法を学びましょうOOPの基礎
9 レッスン972- 01外部ファイルチャレンジクイズ
- 02名前空間とディレクティブチャレンジクイズ
- 03クラスとオブジェクト入門チャレンジクイズ
- 04'this' キーワードチャレンジクイズ
- 05メソッドとパラメーターチャレンジクイズ
- 06フィールドとプロパティチャレンジクイズ
- 07コンストラクターチャレンジクイズ
- 08オブジェクト初期化子チャレンジクイズ
- 09復習:簡易電卓チャレンジ
プロパティと静的メンバー
5 レッスン545- 01自動実装プロパティチャレンジクイズ
- 02読み取り専用・書き込み専用プロパティチャレンジクイズ
- 03静的フィールドとメソッドチャレンジクイズ
- 04静的クラスチャレンジクイズ
- 05式本体のメンバーチャレンジクイズ
クラスアーキテクチャ
4 レッスン427- 01インスタンスデータ vs 静的データチャレンジクイズ
- 02'readonly' と 'const' キーワードチャレンジクイズ
- 03バッキングフィールドチャレンジクイズ
- 04まとめ - 銀行口座マネージャーチャレンジ
継承
6 レッスン644- 01継承の基本構文 (:)チャレンジクイズ
- 02'base' キーワードチャレンジクイズ
- 03Virtual と Override キーワードチャレンジクイズ
- 04Sealed クラスチャレンジクイズ
- 05'object' 基底クラスチャレンジクイズ
- 06まとめ - 従業員の階層構造チャレンジ
ポリモーフィズムとインターフェース
6 レッスン644- 01コンパイル時 vs 実行時ポリモーフィズムチャレンジクイズ
- 02インターフェース vs 抽象クラスチャレンジクイズ
- 03複数のインターフェースチャレンジクイズ
- 04明示的なインターフェースチャレンジクイズ
- 05アップキャストとダウンキャストチャレンジクイズ
- 06まとめ - 図形計算機チャレンジ
カプセル化
5 レッスン535- 01アクセス修飾子チャレンジクイズ
- 02カプセル化のためのプロパティチャレンジクイズ
- 03データ隠蔽の実装チャレンジクイズ
- 04イミュータビリティのパターンチャレンジクイズ
- 05まとめ:学生レコードチャレンジ
高度な機能
5 レッスン535- 01演算子のオーバーロードチャレンジクイズ
- 02インデクサー (this[])チャレンジクイズ
- 03ToString() のオーバーライドチャレンジクイズ
- 04拡張メソッドチャレンジクイズ
- 05まとめ - カスタムリストチャレンジ
オブジェクト指向の高度な概念
6 レッスン653- 01継承よりコンポジションチャレンジクイズ
- 02ジェネリクス (クラスとメソッド)チャレンジクイズ
- 03デリゲートとイベントチャレンジクイズ
- 04属性とリフレクションチャレンジクイズ
- 05IDisposable と using ステートメントチャレンジクイズ
- 06依存性の注入 (DI) の基礎チャレンジクイズ
可変長引数
4 レッスン436- 01'params' キーワードチャレンジクイズ
- 02オプション引数チャレンジクイズ
- 03名前付き引数チャレンジクイズ
- 04メソッドオーバーロードチャレンジクイズ
デザインパターン パート1
5 レッスン545- 01デザインパターン入門チャレンジクイズ
- 02スレッドセーフなSingletonチャレンジクイズ
- 03Factoryパターンチャレンジクイズ
- 04Observerパターン (イベント)チャレンジクイズ
- 05Strategyパターンチャレンジクイズ
デザインパターン パート2
6 レッスン655- 01コマンドパターンチャレンジクイズ
- 02アダプターパターンチャレンジクイズ
- 03デコレーターパターンチャレンジクイズ
- 04テンプレートメソッドパターンチャレンジクイズ
- 05ステートパターンチャレンジクイズ
- 06コンポジットパターンチャレンジクイズ
プロジェクト:図書管理システム
プロジェクト6 レッスン1- 01プロジェクト構成チャレンジ
- 02本とユーザーのモデルプロジェクト
- 03貸出システムのロジックプロジェクト
- 04検索のための LINQプロジェクト
- 05コンソール UI / 管理者インターフェースプロジェクト
- 06ユニットテスト (NUnit/xUnit)プロジェクト
最終課題
3 レッスン3- 01Eラーニングプラットフォームチャレンジ
- 02ゲームキャラクターコンポーネントチャレンジ
- 03車両レンタルサービスチャレンジ
CoddyでC#を学ぶ理由
- 本物のC#コードをブラウザで書いて実行できます。Visual Studioのインストールも.NET SDKのセットアップも不要。各レッスンでC#プログラムをサーバー側でコンパイルし、結果をすぐに表示します。
- 実務で使われる形のオブジェクト指向C#を学べます。クラス、プロパティ、継承、インターフェース、ジェネリクス、例外処理、LINQまで。各概念のあとにコード例と練習問題が続きます。
- AIヒントがC#コードのデバッグやコンパイラエラーの読み解きを手伝ってくれるので、特にOOPが初めてでも、言語が威圧的ではなく親しみやすく感じられます。
- 修了するとC#の無料修了証明書がもらえます。Unityを使ったゲーム開発、バックエンド、エンタープライズ系の職種ではC#の習熟が前提になることが多く、そうした場面で役立ちます。
C#学習についてのよくある質問
C#は初心者でも学びやすいですか?
C#は、強く型付けされた言語の中では比較的とっつきやすい部類です。構文に一貫性があり、標準ライブラリは充実していてドキュメントも豊富。プロパティやパターンマッチングといった最近の機能のおかげで、定型的なコードもぐっと減ります。多くの初心者は最初の1時間以内に最初のC#プログラムを動かし、1週間以内にクラスや継承まで到達しています。
C#の習得にはどのくらい時間がかかりますか?
C#の基礎 — 構文、メソッド、クラス、オブジェクト — は毎日練習すれば2〜4週間で身につきます。継承、インターフェース、ジェネリクス、LINQを無理なく使えるようになるには、だいたい1〜3か月。ASP.NETやUnityでのゲーム開発、エンタープライズ向けのパターンに踏み込むのは、その先のステップです。
C#とJavaの違いは?
C#とJavaは近い親戚のような関係です。どちらも強く型付けされ、クラスベースで、ガベージコレクションを備えています。C#は新機能の取り込みが早く(プロパティ、LINQ、async/await、パターンマッチングなど)、Unityのゲーム開発やWindows向けツールで広く使われています。Javaはどちらかというと、Androidや大規模な企業向けバックエンドに寄っています。スキルは両方向に活かせます。
C#でゲーム開発はできますか?
はい。C# は世界でも特に人気のあるゲームエンジン Unity のメインスクリプト言語です。本コースで身につける OOP の基礎(クラス、継承、インターフェース)は Unity のコンポーネントモデルにそのまま対応するので、C# コースを修了すれば Unity でも大きなアドバンテージになります。
C#をオンラインで無料で学べますか?
はい。インタラクティブなC#コースは無料です——レッスン、コーディング演習、クイズ、修了証まですべて含まれます。エディタはブラウザ上で動くので、Visual Studioも.NET SDKも、その他のIDEも一切インストールせずにC#を書き始められます。
コース修了後にC#の修了証はもらえますか?
はい。C#コースを修了すると、無料の修了証が発行され、履歴書に記載したりLinkedInでシェアしたりできます。これまでに作ったUnityプロジェクトや.NETアプリ、GitHubリポジトリと並ぶ、検証可能な実力の証になります。