📚 3ヶ月 初心者向けプログラミング学習プラン

(純粋なロジック + OOP + クイズ形式練習)

🗓️ コース期間: 48日間 | 96時間(4ヶ月 | 週3日)
 🎯 目的: プログラミングの基礎ロジックとOOPをゼロから習得し、週ごとにクイズ形式で練習
⚠️特記事項: プログラミング言語は任意でご指定いただけます。おすすめは Java、C#、PHP です。


📘 第1ヶ月目:プログラミング基礎 & ロジック構築

🔹 第1週:導入 + 変数とデータ型

学習内容:
  • プログラミングとは?
  • 入力 / 出力の基本
  • 変数の宣言と命名ルール
  • データ型(int, float, bool, string)
  • 型変換(例:int → string)
練習・クイズ例:

 ✅ データ型と値のマッチング
 ✅ 有効・無効な変数名を識別
 ✅ 出力予測: x = 5; print(x)


🔹 2週:演算子と式

学習内容:
  • 算術演算子(+、-、*、/、%)
  • 比較演算子(==、!=、>、<、>=、<=)
  • 論理演算子(AND、OR、NOT)
  • 演算子の優先順位
練習・クイズ例:

 ✅ 出力予測:x = 10 > 5 and 2 < 1
 ✅ 空欄を正しい演算子で埋める
 ✅ 間違った式をデバッグ


🔹 3週:条件分岐(if-else

学習内容:
  • if、else if、else の使い方
  • ネストされた条件分岐
  • 複雑なブール条件
練習・クイズ例:

 ✅ 年齢による判断ロジックを書く
 ✅ 実行されないコードを見つける
 ✅ どの条件が実行されるかを予測


🔹 4週:繰り返し処理(forwhile

学習内容:
  • for ループの基本
  • while ループの基本
  • カウンター付きループ・無限ループ
  • ループ制御(break、continue)
練習・クイズ例:

 ✅ 1から10まで出力
 ✅ 無限ループを識別
 ✅ ループ変数の動きをトレース


📗 2ヶ月目:データ処理・関数・ロジックパズル

🔹 5週:リスト / 配列

学習内容:
  • リストや配列の作成と操作
  • インデックス、スライスの使い方
  • 要素の追加・削除
  • 配列のループ処理
練習・クイズ例:

 ✅ list[2] の値は?
 ✅ 配列の合計を求める
 ✅ 範囲外インデックスエラーを見つける


🔹 6週:文字列の操作

学習内容:
  • 文字列の作成とインデックスアクセス
  • メソッド(長さ、大小変換、部分文字列など)
  • 文字列の結合と比較
練習・クイズ例:

 ✅ 文字列を逆にする
 ✅ 有効な部分文字列を識別
 ✅ 出力予測: "Hello".upper()

🔹 7週:関数

学習内容:
  • 関数の定義と呼び出し
  • 引数と戻り値
  • 変数のスコープ(ローカル vs グローバル)
  • 再利用性とDRY原則
練習・クイズ例:

 ✅ 2つの数の最大値を返す関数を完成
 ✅ 関数呼び出しのトレース
 ✅ 引数・戻り値の空欄を埋める


🔹 第8週:問題解決 & デバッグ練習

学習内容:
  • 変数・条件・ループ・関数の統合活用
  • ステップ実行によるデバッグ法
  • 構文エラー・論理エラーの特定
練習・クイズ例:

 ✅ パズル解決:偶数・奇数、素数、階乗
 ✅ デバッグ:ループが止まらない原因は?
 ✅ 壊れた関数のロジック修正


📕 3ヶ月目:オブジェクト指向プログラミング(OOP

🔹 第9週:クラスとオブジェクト

学習内容:
  • クラスとは?
  • クラスの定義とオブジェクトの生成
  • インスタンス変数とメソッドの使い方
練習・クイズ例:

 ✅ Person クラス(名前・年齢)を定義
 ✅ メソッド呼び出しのトレース
 ✅ 複数のオブジェクトからの出力予測


🔹 第10週:コンストラクタとthisキーワード

学習内容:
  • コンストラクタとは?
  • 初期化時にオブジェクトの状態を設定
  • this キーワードの意味と使用法
練習・クイズ例:

 ✅ コンストラクタでオブジェクトを作成
 ✅ 出力と一致するコンストラクタを選択
 ✅ 誤ったコンストラクタの使い方を特定


🔹 11週:継承とポリモーフィズム

学習内容:
  • 継承とは?
  • スーパークラスとサブクラス
  • メソッドのオーバーライド
  • ポリモーフィズムの考え方
練習・クイズ例:

 ✅ Animal クラスと Dog サブクラスの定義
 ✅ オーバーライドされたメソッドの出力予測
 ✅ クラス階層ごとのオブジェクト動作をマッチ


🔹 12週:カプセル化 & 総復習

学習内容:
  • カプセル化(private変数、getter/setter)
  • 全トピックの復習
  • ボーナス:抽象化とインターフェースの概要
練習・クイズ例:

 ✅ プライベートデータを持つクラス定義
 ✅ 最終テスト:25問の総合クイズ
 ✅ ロジックミニプロジェクト:銀行口座クラスのシミュレーション


📦 ボーナス:毎週の練習形式

✅ 選択式問題(MCQ)
 📄 出力予測
 🔍 バグを見つける
 ⛓️ コードの空欄補完
 💡 ショートロジックパズル