プログラミング学習ロードマップ完全ガイド
目標や作りたいものから逆算して、基礎ツールの習得からデータ分析・Web開発・AI・アプリ・ゲームまでの学習ステップを整理。どこから始めて何を学べばいいか迷わないよう、実践課題と次のアクションを明確に示します

プログラミングを学びたいけれど、何から始めればいいかわからない…そんな悩みを抱えていませんか?
この記事では、あなたの目標に応じた学習ロードマップをご紹介します。このサイトは、あなたの「やりたいこと」から逆算して、必要なスキルを段階的に学べるように設計されています。
就活を見据えている方へ:就活やキャリアを意識した学習プランは大学生のための学習ガイドをご覧ください。(現在執筆中)
このサイトの使い方
1. まず、あなたの目標を選ぼう
以下の5つの学習パスから、興味のあるものを選んでください。複数選んでも大丈夫です!
- オープンソースソフトウェアを動かしたい
- データ分析をしたい
- 機械学習・AI を学びたい
- ウェブサイトを作りたい
- アプリを開発したい
- ゲームを作りたい
2. 共通の基礎知識を身につける
どの分野に進むにしても、まずは以下の3つの基礎ツールを使えるようになることが重要です。
- ターミナル(コマンドライン)
- バージョン管理(Git)
- コードエディタ(VSCodeなど)
実は、この3つが最初の難関です。これらは、PCを「コマンド(文字入力)」で操作する基本スキルであり、プログラミング学習の土台となります。
「なぜマウスがあるのに、わざわざ文字で操作するの?」と思うかもしれません。でも、文字でPCを操作できれば、さまざまな作業を自動化できるんです。
例えば、100個のファイル名を一括で変更する場合、マウス操作だと途方もない時間がかかりますが、コマンドならたった数行で完了します。
「いやいや、私は数学が苦手だし…」と心配する方もいるかもしれません。でも安心してください。この基礎の部分は、英単語や文法を覚える感覚に近く、むしろ文系の方が得意とする分野だったりします。
英語と違って、プログラミングは間違えてもエラーが出るだけで、命を取られることはありません。失敗を恐れず、まずは挑戦してみましょう!
3. 目標に応じた専門知識を学ぶ
基礎が身についたら、選んだ分野に特化したスキルを学びます。
学習ロードマップ
共通の基礎(全員におすすめ)
これらのスキルは、どの分野に進むにしても必須です。まずはここから始めましょう。
Phase 1: 開発環境の準備
| ステップ | 記事タイトル | 状態 |
|---|---|---|
| 1 | ターミナル入門:Macターミナル | ✅ 公開済 |
| 2 | ターミナル入門:Windowsコマンドプロンプト | ⏳ 準備中 |
| 2 | Homebrew入門:Macでソフトウェアを簡単に管理しよう | ✅ 公開済 |
| 3 | VSCode入門:コードエディタの使い方 | ✅ 公開済 |
Phase 2: バージョン管理の習得
| ステップ | 記事タイトル | 状態 |
|---|---|---|
| 4 | Git入門(前編):バージョン管理の基礎 | ✅ 公開済 |
| 5 | Git入門(後編):ブランチ運用と変更の取り消し | ✅ 公開済 |
| 6 | GitHub入門:リモート連携とチーム開発 | ✅ 公開済 |
できたら便利なスキル(任意)
これらは必須ではありませんが、学習をより効率的にします。各パスに進んでから、必要に応じて戻ってきても大丈夫です。
| ステップ | 記事タイトル | 状態 |
|---|---|---|
| 7 | Vim入門:CLI上でのテキスト編集 | ⏳ 準備中 |
| 8 | Nano入門:初心者に優しいCLIエディタ | ⏳ 準備中 |
| 9 | エラーメッセージの読み方:デバッグの第一歩 | ⏳ 準備中 |
| 10 | Google検索のコツ:エンジニアの情報収集術 | ⏳ 準備中 |
| 11 | Markdown記法入門:美しいドキュメント作成 | ⏳ 準備中 |
| 12 | 公式ドキュメントの読み方:自力で学ぶ力を身につける | ⏳ 準備中 |
パス1: オープンソースソフトウェアを動かしたい
GitHubで見つけた面白いプロジェクトを自分のパソコンで動かしてみたい方向けのパスです。
学習内容
| ステップ | 記事タイトル | 状態 |
|---|---|---|
| 基礎 | 共通の基礎(Phase 1-2)を完了 | - |
| 1 | README.mdの読み方:プロジェクトの説明書を理解する | ⏳ 準備中 |
| 2 | Git Clone入門:プロジェクトをローカルにコピーする | ⏳ 準備中 |
| 3 | 依存関係のインストール:npm, pip, bundlerの使い方 | ⏳ 準備中 |
| 4 | 環境変数とは?.envファイルの設定方法 | ⏳ 準備中 |
| 5 | トラブルシューティング:よくあるエラーと解決法 | ⏳ 準備中 |
このパスで身につくスキル
- GitHubプロジェクトの構造理解
- 各種プログラミング言語のパッケージマネージャーの使い方
- ドキュメントの読み方
- エラーメッセージの読み方とデバッグの基本
パス2: データ分析をしたい(Python/R)
データを分析して、グラフを作ったり、統計処理をしたい方向けのパスです。
Phase 1: Python環境構築と基礎
目標成果物: Python開発環境・簡単なスクリプト
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 基礎 | 共通の基礎(Phase 1-2)を完了 | - | - |
| 1 | Pythonのインストール:どの方法が最適? | Python環境 | ✅ 公開済 |
| 2 | Python基本文法:変数・関数・制御構文 | 簡単なスクリプト | ⏳ 準備中 |
| 3 | 仮想環境入門:venvとcondaの使い分け | 仮想環境の構築 | ⏳ 準備中 |
| 4 | Jupyter Notebook入門:対話的にコードを実行 | Notebook環境 | ⏳ 準備中 |
Phase 2: データ操作の基礎(Pandas)
目標成果物: CSVデータの読み込みと加工
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 5 | Pandas入門:データの読み込み | CSVファイルの読み込み | ⏳ 準備中 |
| 6 | DataFrame基礎:行と列の操作 | データ抽出 | ⏳ 準備中 |
| 7 | データクリーニング:欠損値の処理 | クリーンなデータセット | ⏳ 準備中 |
| 8 | データクリーニング応用:外れ値・重複の処理 | 高品質データ | ⏳ 準備中 |
| 9 | データ集約:groupby と集計関数 | 統計サマリー | ⏳ 準備中 |
| 10 | データ結合:merge と join | 複数データソースの統合 | ⏳ 準備中 |
Phase 3: データ可視化
目標成果物: グラフとチャート
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 11 | Matplotlib入門:基本的なグラフ | 折れ線・棒グラフ | ⏳ 準備中 |
| 12 | Seaborn入門:美しい統計グラフ | 散布図・ヒストグラム | ⏳ 準備中 |
| 13 | 複雑な可視化:サブプロットとレイアウト | ダッシュボード的な表示 | ⏳ 準備中 |
| 14 | インタラクティブな可視化:Plotly 入門 | 動的グラフ | ⏳ 準備中 |
Phase 4: 探索的データ分析(EDA)
目標成果物: データ分析レポート
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 15 | EDA入門:データの全体像を把握する | 基礎統計量レポート | ⏳ 準備中 |
| 16 | 相関分析:変数間の関係を見る | 相関行列と可視化 | ⏳ 準備中 |
| 17 | 時系列データの分析 | トレンド分析 | ⏳ 準備中 |
| 18 | カテゴリカルデータの分析 | クロス集計表 | ⏳ 準備中 |
Phase 5: 統計分析の基礎
目標成果物: 統計検定の実施
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 19 | 記述統計:平均・分散・標準偏差 | 統計量の計算 | ⏳ 準備中 |
| 20 | 確率分布:正規分布・二項分布 | 分布の可視化 | ⏳ 準備中 |
| 21 | 仮説検定:t検定・カイ二乗検定 | A/Bテスト分析 | ⏳ 準備中 |
| 22 | 回帰分析:線形回帰の基礎 | 予測モデル | ⏳ 準備中 |
Phase 6: 機械学習入門
目標成果物: 簡単な予測モデル
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 23 | scikit-learn入門:機械学習ライブラリ | 環境構築 | ⏳ 準備中 |
| 24 | 教師あり学習:分類問題 | 分類モデル | ⏳ 準備中 |
| 25 | モデル評価:精度・再現率・F値 | モデル評価レポート | ⏳ 準備中 |
| 26 | クロスバリデーション:過学習を防ぐ | 堅牢なモデル | ⏳ 準備中 |
Phase 7: 実践プロジェクト
目標成果物: ポートフォリオに使える分析レポート
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 27 | 実データで分析プロジェクト①:Kaggleデータセット | 完全な分析プロジェクト | ⏳ 準備中 |
| 28 | 実データで分析プロジェクト②:公的統計データ | オープンデータ分析 | ⏳ 準備中 |
| 29 | レポート作成:分析結果をまとめる | PDF/HTMLレポート | ⏳ 準備中 |
| 30 | GitHub公開:ポートフォリオを作る | GitHubポートフォリオ | ⏳ 準備中 |
R言語を学びたい方向け
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| R1 | Rのインストールとセットアップ | R環境 | ⏳ 準備中 |
| R2 | RStudio入門:統計分析の統合環境 | RStudio環境 | ⏳ 準備中 |
| R3 | tidyverse入門:データ操作の現代的な方法 | データパイプライン | ⏳ 準備中 |
| R4 | ggplot2:美しいグラフ作成 | データ可視化 | ⏳ 準備中 |
| R5 | R Markdown:再現可能なレポート作成 | 分析レポート | ⏳ 準備中 |
このパスで身につくスキル
- Python/Rのプログラミング基礎
- データフレームの操作(Pandas/tidyverse)
- データクリーニングと前処理
- データ可視化(Matplotlib/Seaborn/ggplot2)
- 探索的データ分析(EDA)
- 統計分析の基本
- 仮説検定と回帰分析
- 機械学習の基礎(scikit-learn)
- Jupyter Notebook/R Markdownでのレポート作成
- 実データを使った分析プロジェクト
パス3: ウェブサイトを作りたい
自分のウェブサイトやウェブアプリケーションを作りたい方向けのパスです。
Phase 1: HTML/CSS/JavaScript の基礎
目標成果物: 自己紹介サイト・ポートフォリオページ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 基礎 | 共通の基礎(Phase 1-2)を完了 | - | - |
| 1 | HTML入門:ウェブページの構造を作る | シンプルな自己紹介ページ | ⏳ 準備中 |
| 2 | CSS入門:ウェブページを装飾する | スタイル付き自己紹介ページ | ⏳ 準備中 |
| 3 | レスポンシブデザイン:スマホ対応させる | モバイルフレンドリーなサイト | ⏳ 準備中 |
| 4 | JavaScript入門:変数と関数の基礎 | 簡単な計算機 | ⏳ 準備中 |
| 5 | DOM操作:JavaScriptでページを動かす | インタラクティブなUI | ⏳ 準備中 |
| 6 | イベント処理:クリックやフォーム送信 | 簡易お問い合わせフォーム | ⏳ 準備中 |
Phase 2: モダンJavaScript と API連携
目標成果物: 天気予報アプリ・APIを使ったWebアプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 7 | ES6+の新機能:アロー関数・分割代入 | - | ⏳ 準備中 |
| 8 | 非同期処理:Promise と async/await | 非同期処理の練習 | ⏳ 準備中 |
| 9 | Fetch API:外部データを取得する | 天気予報アプリ | ⏳ 準備中 |
| 10 | JSON操作:データの扱い方 | データ表示アプリ | ⏳ 準備中 |
Phase 3: Node.js とパッケージ管理
目標成果物: 開発環境の構築
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 11 | Node.js入門:JavaScriptをサーバーで動かす | Node.js環境構築 | ⏳ 準備中 |
| 12 | npm入門:パッケージ管理の基本 | package.jsonの理解 | ⏳ 準備中 |
| 13 | モジュールバンドラー:Viteを使う | モダンな開発環境 | ⏳ 準備中 |
Phase 4: React で UI構築
目標成果物: Todoアプリ・カウンターアプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 14 | React入門:コンポーネントの基礎 | Helloコンポーネント | ⏳ 準備中 |
| 15 | JSXとは:HTMLみたいだけどJavaScript | - | ⏳ 準備中 |
| 16 | State管理:useState を使う | カウンターアプリ | ⏳ 準備中 |
| 17 | Props:コンポーネント間でデータを渡す | 再利用可能なカード | ⏳ 準備中 |
| 18 | useEffect:副作用の処理 | データフェッチアプリ | ⏳ 準備中 |
| 19 | フォーム処理:入力を扱う | Todoアプリ | ⏳ 準備中 |
| 20 | リスト表示とKey:配列をレンダリング | Todoリスト完成 | ⏳ 準備中 |
Phase 5: Next.js でフルスタック開発
目標成果物: ブログサイト・ポートフォリオサイト
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 21 | Next.js入門:Reactのメタフレームワーク | Next.jsプロジェクト作成 | ⏳ 準備中 |
| 22 | ルーティング:ページ間の移動 | 複数ページのサイト | ⏳ 準備中 |
| 23 | 動的ルート:ブログ記事ページを作る | 動的ルーティング | ⏳ 準備中 |
| 24 | Tailwind CSS:効率的なスタイリング | 見た目を整える | ⏳ 準備中 |
| 25 | 画像最適化:Next.js Image コンポーネント | 高速な画像表示 | ⏳ 準備中 |
| 26 | SEO対策:メタデータの設定 | SEOフレンドリーなサイト | ⏳ 準備中 |
Phase 6: データベースと認証
目標成果物: ログイン機能付きアプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 27 | Supabase入門:データベースを使う | データの永続化 | ⏳ 準備中 |
| 28 | CRUD操作:作成・読み取り・更新・削除 | メモアプリ | ⏳ 準備中 |
| 29 | 認証入門:ユーザー登録とログイン | 認証機能 | ⏳ 準備中 |
| 30 | セキュリティ基礎:XSS・CSRF対策 | セキュアなアプリ | ⏳ 準備中 |
Phase 7: デプロイと運用
目標成果物: 公開されたWebサイト
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 31 | Vercelデプロイ:サイトを世界に公開 | デプロイされたサイト | ⏳ 準備中 |
| 32 | カスタムドメイン:独自ドメインを設定 | 自分のドメインのサイト | ⏳ 準備中 |
| 33 | パフォーマンス最適化:高速化のコツ | 最適化されたサイト | ⏳ 準備中 |
| 34 | Google Analytics:アクセス解析 | 分析機能付きサイト | ⏳ 準備中 |
このパスで身につくスキル
- HTML/CSS/JavaScriptの基礎から応用
- モダンJavaScript(ES6+)
- 非同期処理とAPI連携
- Reactによるコンポーネント設計
- Next.jsによるフルスタック開発
- データベースとバックエンド基礎
- 認証とセキュリティ
- デプロイと運用
- レスポンシブデザイン
- SEO対策
パス4: 機械学習・AI を学びたい
機械学習やAIを使って予測モデルを作りたい方向けのパスです。データ分析の基礎を学んだ後におすすめです。
Phase 1: Python と数学の基礎
目標成果物: Python環境・数学の理解
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 基礎 | 共通の基礎(Phase 1-2)+ データ分析パス Phase 1-2を完了 | - | - |
| 1 | NumPy入門:数値計算の基礎 | 配列操作 | ⏳ 準備中 |
| 2 | 線形代数の基礎:ベクトルと行列 | 行列演算 | ⏳ 準備中 |
| 3 | 微分・積分の基礎:勾配降下法を理解する | - | ⏳ 準備中 |
| 4 | 確率・統計の基礎:機械学習に必要な数学 | 確率分布の実装 | ⏳ 準備中 |
Phase 2: scikit-learn で機械学習入門
目標成果物: 分類・回帰モデル
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 5 | scikit-learn入門:環境構築 | ML環境 | ⏳ 準備中 |
| 6 | 教師あり学習:分類問題の基礎 | アイリス分類 | ⏳ 準備中 |
| 7 | 線形回帰:予測モデルの基本 | 住宅価格予測 | ⏳ 準備中 |
| 8 | ロジスティック回帰:二値分類 | スパム判定 | ⏳ 準備中 |
| 9 | 決定木:解釈しやすいモデル | 顧客分類 | ⏳ 準備中 |
| 10 | ランダムフォレスト:精度向上のアンサンブル | 高精度モデル | ⏳ 準備中 |
Phase 3: モデル評価と改善
目標成果物: 最適化されたモデル
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 11 | データ前処理:正規化・標準化 | 前処理パイプライン | ⏳ 準備中 |
| 12 | 特徴量エンジニアリング:より良い特徴を作る | 特徴量生成 | ⏳ 準備中 |
| 13 | モデル評価指標:精度・再現率・F値 | 評価レポート | ⏳ 準備中 |
| 14 | 交差検証:過学習を防ぐ | 堅牢なモデル | ⏳ 準備中 |
| 15 | ハイパーパラメータチューニング:GridSearch | 最適化モデル | ⏳ 準備中 |
| 16 | 不均衡データ対策:SMOTE・重み付け | 改善モデル | ⏳ 準備中 |
Phase 4: 教師なし学習
目標成果物: クラスタリング・次元削減
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 17 | k-means法:クラスタリングの基礎 | 顧客セグメンテーション | ⏳ 準備中 |
| 18 | 主成分分析(PCA):次元削減 | 可視化 | ⏳ 準備中 |
| 19 | 異常検知:外れ値の発見 | 異常検知システム | ⏳ 準備中 |
Phase 5: ディープラーニング入門(TensorFlow/Keras)
目標成果物: ニューラルネットワークモデル
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 20 | TensorFlow/Keras入門:環境構築 | DL環境 | ⏳ 準備中 |
| 21 | ニューラルネットワークの基礎 | シンプルなNN | ⏳ 準備中 |
| 22 | MNIST:手書き数字認識 | 画像分類モデル | ⏳ 準備中 |
| 23 | CNN:畳み込みニューラルネットワーク | 高精度画像認識 | ⏳ 準備中 |
| 24 | 転移学習:事前学習モデルの活用 | カスタム分類器 | ⏳ 準備中 |
| 25 | データ拡張:少ないデータで学習 | 改善モデル | ⏳ 準備中 |
Phase 6: 自然言語処理(NLP)
目標成果物: テキスト分類・感情分析
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 26 | テキスト前処理:トークン化・正規化 | 前処理パイプライン | ⏳ 準備中 |
| 27 | TF-IDF:テキストの数値化 | 文書分類 | ⏳ 準備中 |
| 28 | Word2Vec:単語の埋め込み | 単語ベクトル | ⏳ 準備中 |
| 29 | RNN/LSTM:系列データの処理 | 感情分析 | ⏳ 準備中 |
| 30 | Transformer入門:BERT・GPT | テキスト分類 | ⏳ 準備中 |
Phase 7: MLOps とデプロイ
目標成果物: 公開されたMLモデル
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 31 | モデルの保存と読み込み:pickle・joblib | モデル永続化 | ⏳ 準備中 |
| 32 | Flask/FastAPI:モデルをAPI化 | REST API | ⏳ 準備中 |
| 33 | Docker:モデルのコンテナ化 | Dockerイメージ | ⏳ 準備中 |
| 34 | クラウドデプロイ:Heroku・AWS | 公開API | ⏳ 準備中 |
| 35 | モデルのモニタリング:精度低下の検知 | 監視システム | ⏳ 準備中 |
Phase 8: 実践プロジェクト
目標成果物: ポートフォリオに使えるMLプロジェクト
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 36 | Kaggle入門:コンペティションに参加 | Kaggle投稿 | ⏳ 準備中 |
| 37 | エンドツーエンドプロジェクト①:タイタニック生存予測 | 完全なMLパイプライン | ⏳ 準備中 |
| 38 | エンドツーエンドプロジェクト②:画像分類アプリ | Webアプリ | ⏳ 準備中 |
| 39 | エンドツーエンドプロジェクト③:レコメンドシステム | 推薦エンジン | ⏳ 準備中 |
| 40 | ポートフォリオ作成:GitHubで公開 | MLポートフォリオ | ⏳ 準備中 |
このパスで身につくスキル
- Python プログラミング(NumPy、Pandas)
- 機械学習の数学(線形代数、微積分、確率統計)
- scikit-learn による古典的機械学習
- 教師あり学習(分類・回帰)
- 教師なし学習(クラスタリング・次元削減)
- モデル評価と改善
- 特徴量エンジニアリング
- ディープラーニング(TensorFlow/Keras)
- CNN による画像認識
- RNN/LSTM/Transformer による自然言語処理
- 転移学習
- MLOps(モデルデプロイ・API化)
- Docker によるコンテナ化
- Kaggle コンペティション
- エンドツーエンドMLプロジェクト
パス5: アプリを作りたい
スマートフォン向けのアプリケーションを開発したい方向けのパスです。
Phase 1: 開発環境とプログラミング基礎
iOS開発ルート(Swift)
目標成果物: 最初のiOSアプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 基礎 | 共通の基礎(Phase 1-2)を完了 | - | - |
| iOS1 | Xcodeのインストールとセットアップ | Xcode環境 | ⏳ 準備中 |
| iOS2 | Swift入門:変数と関数 | Swift基礎 | ⏳ 準備中 |
| iOS3 | Swift応用:オプショナル・クロージャ | - | ⏳ 準備中 |
| iOS4 | SwiftUI入門:宣言的UI | Hello Worldアプリ | ⏳ 準備中 |
| iOS5 | UIコンポーネント:Text・Button・Image | 簡単なUI | ⏳ 準備中 |
クロスプラットフォームルート(React Native)
目標成果物: iOS/Android両対応アプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 基礎 | 共通の基礎(Phase 1-2)を完了 | - | - |
| Cross1 | React Native入門:環境構築 | React Native環境 | ⏳ 準備中 |
| Cross2 | Expo入門:開発を簡単に | Expoプロジェクト | ⏳ 準備中 |
| Cross3 | React基礎:コンポーネントとProps | 基本UI | ⏳ 準備中 |
| Cross4 | React Native コンポーネント:View・Text・Button | Hello Worldアプリ | ⏳ 準備中 |
Phase 2: UI/UX 実装
iOS(Swift)向け
目標成果物: カウンターアプリ・Todoアプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| iOS6 | State管理:@State と @Binding | カウンターアプリ | ⏳ 準備中 |
| iOS7 | リスト表示:List と ForEach | リスト表示アプリ | ⏳ 準備中 |
| iOS8 | ナビゲーション:NavigationStack | 画面遷移 | ⏳ 準備中 |
| iOS9 | フォーム入力:TextField・Toggle | 入力フォーム | ⏳ 準備中 |
| iOS10 | データ永続化:UserDefaults | データ保存 | ⏳ 準備中 |
React Native 向け
目標成果物: カウンターアプリ・Todoアプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| Cross5 | State管理:useState と useEffect | カウンターアプリ | ⏳ 準備中 |
| Cross6 | リスト表示:FlatList と ScrollView | リスト表示アプリ | ⏳ 準備中 |
| Cross7 | ナビゲーション:React Navigation | 画面遷移 | ⏳ 準備中 |
| Cross8 | フォーム入力:TextInput | 入力フォーム | ⏳ 準備中 |
| Cross9 | データ永続化:AsyncStorage | データ保存 | ⏳ 準備中 |
Phase 3: デバイス機能の利用
iOS(Swift)向け
目標成果物: カメラアプリ・位置情報アプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| iOS11 | カメラ・写真ライブラリの利用 | 写真撮影アプリ | ⏳ 準備中 |
| iOS12 | 位置情報サービス:CoreLocation | 位置情報アプリ | ⏳ 準備中 |
| iOS13 | ローカル通知:UserNotifications | リマインダーアプリ | ⏳ 準備中 |
React Native 向け
目標成果物: カメラアプリ・位置情報アプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| Cross10 | Expo Camera:カメラ機能 | 写真撮影アプリ | ⏳ 準備中 |
| Cross11 | Expo Location:位置情報 | 位置情報アプリ | ⏳ 準備中 |
| Cross12 | プッシュ通知:Expo Notifications | 通知機能 | ⏳ 準備中 |
Phase 4: API連携とバックエンド
目標成果物: データを取得・表示するアプリ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 14 | API連携:REST APIの基礎 | APIデータ表示 | ⏳ 準備中 |
| 15 | Supabase連携:データベース利用 | CRUD操作アプリ | ⏳ 準備中 |
| 16 | 認証機能:ログイン・サインアップ | 会員制アプリ | ⏳ 準備中 |
Phase 5: 仕上げと公開
目標成果物: App Storeで公開されたアプリ
iOS(Swift)向け
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| iOS14 | アプリアイコン・起動画面の作成 | ブランディング | ⏳ 準備中 |
| iOS15 | App Store Connect:アプリ申請 | App Storeアプリ | ⏳ 準備中 |
| iOS16 | TestFlight:ベータテスト | テスター配布 | ⏳ 準備中 |
React Native 向け
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| Cross13 | EAS Build:アプリビルド | iOS/Androidビルド | ⏳ 準備中 |
| Cross14 | App Store 申請(iOS) | App Storeアプリ | ⏳ 準備中 |
| Cross15 | Google Play 申請(Android) | Google Playアプリ | ⏳ 準備中 |
このパスで身につくスキル
iOS開発(Swift)
- Swift プログラミング
- SwiftUI による宣言的UI開発
- State管理とデータフロー
- UIコンポーネントの実装
- デバイス機能(カメラ、GPS等)の利用
- API連携とデータ取得
- データ永続化
- App Store 申請プロセス
クロスプラットフォーム開発(React Native)
- React/JavaScriptプログラミング
- React Native によるモバイル開発
- Expo による効率的な開発
- クロスプラットフォーム対応
- デバイス機能の利用
- API連携とデータ取得
- iOS/Android 両方のストア申請
パス6: ゲームを作りたい
2Dや3Dのゲームを開発したい方向けのパスです。
Phase 1: Unity とC#の基礎
Unity ルート(推奨)
目標成果物: 最初のゲームプロトタイプ
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 基礎 | 共通の基礎(Phase 1-2)を完了 | - | - |
| 1 | Unityのインストールとセットアップ | Unity環境 | ⏳ 準備中 |
| 2 | Unityエディタの使い方:基本操作 | シーン作成 | ⏳ 準備中 |
| 3 | C#入門:変数と関数 | C#スクリプト | ⏳ 準備中 |
| 4 | C#応用:クラスとオブジェクト指向 | - | ⏳ 準備中 |
| 5 | GameObjectとComponent:Unityの基本概念 | オブジェクト配置 | ⏳ 準備中 |
Phase 2: 2Dゲーム開発の基礎
目標成果物: シンプルな2Dゲーム
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 6 | スプライトとアニメーション | キャラクターアニメ | ⏳ 準備中 |
| 7 | 入力処理:キーボード・マウス操作 | プレイヤー操作 | ⏳ 準備中 |
| 8 | 2D物理演算:Rigidbody2D と Collider2D | 物理挙動 | ⏳ 準備中 |
| 9 | 衝突判定:OnCollisionとOnTrigger | 当たり判定 | ⏳ 準備中 |
| 10 | 最初の2Dゲーム制作:プラットフォーマー | ジャンプゲーム | ⏳ 準備中 |
Phase 3: ゲームシステムの実装
目標成果物: スコア・UI付きゲーム
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 11 | UI実装:Canvas と UIコンポーネント | ゲームUI | ⏳ 準備中 |
| 12 | スコアシステム:ゲーム状態の管理 | スコア表示 | ⏳ 準備中 |
| 13 | シーン遷移:タイトル・ゲーム・リザルト | 複数シーン | ⏳ 準備中 |
| 14 | データ保存:PlayerPrefs でセーブ機能 | ハイスコア保存 | ⏳ 準備中 |
| 15 | サウンド:効果音とBGM | 音響付きゲーム | ⏳ 準備中 |
Phase 4: より複雑なゲーム開発
目標成果物: 完成度の高い2Dゲーム
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 16 | 敵AI:パトロール・追跡の実装 | 敵キャラクター | ⏳ 準備中 |
| 17 | パーティクルシステム:エフェクト作成 | 爆発エフェクト | ⏳ 準備中 |
| 18 | アニメーションコントローラー:複雑なアニメ | キャラアニメ | ⏳ 準備中 |
| 19 | タイルマップ:レベルデザイン | ステージ作成 | ⏳ 準備中 |
| 20 | 2Dゲーム完成プロジェクト:シューティング | 完成ゲーム | ⏳ 準備中 |
Phase 5: 3Dゲーム開発入門
目標成果物: シンプルな3Dゲーム
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 21 | 3D空間の基礎:カメラとライティング | 3Dシーン | ⏳ 準備中 |
| 22 | 3Dモデル:プリミティブとインポート | 3Dオブジェクト | ⏳ 準備中 |
| 23 | 3D物理演算:Rigidbody と Collider | 3D物理挙動 | ⏳ 準備中 |
| 24 | キャラクターコントローラー:3D移動 | 3Dプレイヤー | ⏳ 準備中 |
| 25 | 最初の3Dゲーム:ボール転がし | 3Dゲーム | ⏳ 準備中 |
Phase 6: ビルドと公開
目標成果物: 公開されたゲーム
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| 26 | ビルド設定:PC・Mac・Web | 実行ファイル | ⏳ 準備中 |
| 27 | WebGLビルド:ブラウザで遊べるゲーム | Webゲーム | ⏳ 準備中 |
| 28 | itch.io で公開:ゲームを世界に | 公開ゲーム | ⏳ 準備中 |
| 29 | パフォーマンス最適化:軽量化のコツ | 最適化ゲーム | ⏳ 準備中 |
Godot ルート(軽量・オープンソース)
目標成果物: Godotで作る2Dゲーム
| ステップ | 記事タイトル | 作るもの | 状態 |
|---|---|---|---|
| Game1 | Godot入門:エンジンのインストール | Godot環境 | ⏳ 準備中 |
| Game2 | GDScript入門:Python風のスクリプト | GDScriptの基礎 | ⏳ 準備中 |
| Game3 | ノードとシーン:Godotの基本概念 | シーン構成 | ⏳ 準備中 |
| Game4 | 2Dゲーム制作:プラットフォーマー | ピクセルゲーム | ⏳ 準備中 |
| Game5 | Godot でゲーム公開 | 公開ゲーム | ⏳ 準備中 |
トラブルシューティング
| 記事タイトル | 状態 |
|---|---|
| Unity でよくあるエラーと解決法 | ⏳ 準備中 |
| パフォーマンス問題の診断方法 | ⏳ 準備中 |
| ゲームデザインのベストプラクティス | ⏳ 準備中 |
このパスで身につくスキル
Unity開発
- C# プログラミング
- Unity エディタの操作
- 2D/3Dゲーム開発
- 物理演算とコリジョン
- アニメーションシステム
- UIシステム
- サウンド実装
- ゲームAIの基礎
- パーティクルエフェクト
- ビルドと公開
Godot開発
- GDScript プログラミング
- Godot エディタの操作
- ノードベースの設計
- 2Dゲーム開発
- オープンソースツールの活用
次のステップ
1. 基礎から始めよう
まずは「共通の基礎」セクションから始めることをおすすめします。ターミナルの使い方やGitの操作は、どの分野でも必須のスキルです。
Homebrew入門:Macでソフトウェアを簡単に管理しよう
2. 小さなプロジェクトを作ってみよう
記事を読むだけでなく、実際に手を動かすことが大切です。各記事の最後には実践課題があるので、ぜひチャレンジしてみてください。
3. わからないことは調べる癖をつけよう
プログラミングは、わからないことを調べて解決する連続です。エラーメッセージをGoogle検索したり、公式ドキュメントを読んだりする習慣を身につけましょう。
4. コミュニティに参加しよう
- GitHub で興味のあるプロジェクトをフォロー
- Stack Overflow で質問・回答を読む
- Twitter/X で開発者をフォロー
- 勉強会やハッカソンに参加
学習のコツ
よくある失敗パターン
- 完璧主義になりすぎる:最初から全部理解しようとしない
- 一度に複数のことを学ぼうとする:一つずつ、着実に
- 手を動かさずに読むだけ:必ずコードを書いて試す
- エラーを恐れる:エラーは学びのチャンス
効果的な学習法
- 20%のインプット、80%のアウトプット:読むより書く
- 毎日少しずつ続ける:1日30分でもOK
- わからないことをメモする:後で調べる
- 作りたいものを明確にする:目標があるとモチベーションが続く
ロードマップの見方
ステータスの説明
- ✅ 公開済:記事が完成しており、すぐに読めます
- 📝 執筆中:現在執筆中で、近日公開予定です
- ⏳ 準備中:今後執筆予定の記事です
フィードバックをお待ちしています
このロードマップは、皆さんのフィードバックをもとに改善していきます:
- 「この分野の記事が欲しい」
- 「この説明がわかりにくい」
- 「もっと初心者向けの内容が欲しい」
ぜひあなたの声を聞かせてください!
まとめ
プログラミングの学習は、マラソンのようなものです。短距離走のように一気に学ぼうとせず、長期的な視点で楽しみながら続けることが大切です。
このサイトが、あなたのプログラミング学習の道しるべとなれば幸いです。
ヴィンセント
青山学院大学経済学部在学中。楽天、LINEヤフーでのインターン経験あり。 文系からエンジニアの道に進む中で、環境構築やエラー解決に苦労した経験から、 同じように悩む人の役に立ちたいと思い、このサイトを立ち上げました。



