学習ロードマップ
段は「何を先に知っている必要があるか」だけで決まっています。難易度順ではありません。 読了にした記事は緑になり、前提が揃っていない記事は点線で表示されます。 飛ばして読んでも構いませんが、点線の記事は途中で前提知識を補いながら読むことになります。
1
第 1 段
前提なしで読める。ここから始める
— / 12ネットワーク / Web基礎
DNS — 名前からIPアドレスにたどり着くまで
ネットワーク / Web基礎
TCP/IP — データが相手に届くまでの4層
ブラウザ応用
レンダリングパイプライン — どのCSSが重いかは工程で決まる
ブラウザ応用
イベントループ — 1本のスレッドで待たずに捌く
ブラウザ基礎
同一オリジンポリシー — ブラウザが最初から持っている壁
データ / DB 設計基礎
正規化 — 同じ事実を2か所に書かない
データ / DB 設計発展
トランザクションと分離レベル — 同時に動く処理が互いをどこまで見てよいか
設計 / アーキテクチャ基礎
凝集度と結合度 — 変更したとき何ファイル触るか
運用 / 開発プロセス応用
CI/CD — 壊れていることに、人間より先に気づく
運用 / 開発プロセス応用
コンテナ — 「手元では動く」を構造的に潰す
運用 / 開発プロセス応用
ログと監視 — 誰より先に、壊れていることに気づく
運用 / 開発プロセス応用
テスト戦略 — どこに何枚の網を張るか
2
第 2 段
第1段のどれかを読んでいれば入れる
— / 9ネットワーク / Web応用
HTTP/1.1 → 2 → 3 — 何が遅くて、何を直したのか
ネットワーク / Web応用
TLS — 盗聴・改ざん・なりすましを同時に防ぐ
ブラウザ応用
Core Web Vitals — 数字を上げるのではなく、何が遅いかを特定する
認証 / セキュリティ基礎
Cookie とセッション — 状態を持たない HTTP に記憶を持たせる
データ / DB 設計応用
インデックス — 読む行を減らすための索引
データ / DB 設計応用
マイグレーション — 流した瞬間に、書き込みが全部待つ
設計 / アーキテクチャ応用
SOLID — 5つの原則が守ろうとしている1つのこと
設計 / アーキテクチャ応用
レイヤードアーキテクチャ — 依存の向きを一方向に揃える
運用 / 開発プロセス応用
インシデント対応 — 直すのが先か、分かるのが先か
3
第 3 段
土台が要る。ここから実務の判断に効いてくる
— / 11ネットワーク / Web応用
CDN — 利用者の近くに置いて、オリジンを守る
ネットワーク / Web応用
キャッシュ戦略 — いつ捨てるかを設計する
ブラウザ応用
CORS — 壁に穴を開けるのは「読まれる側」
ブラウザ応用
ブラウザのストレージ — 読めるか、と、送られるかは別の話
認証 / セキュリティ応用
JWT — 取り消せない代わりに、問い合わせが要らない
認証 / セキュリティ応用
XSS・CSRF・SQLi — データとコードの境界が壊れる
データ / DB 設計応用
N+1 問題 — 1回で済むはずの問い合わせが100回になる
データ / DB 設計発展
実行計画 — DB が何をしようとしているかを読む
データ / DB 設計応用
RDB と NoSQL — 問い合わせの形を、いつ決めるか
設計 / アーキテクチャ発展
ドメインモデリング — 業務の言葉をコードの形にする
API 設計応用
リソース設計 — 一度公開したら変えられない契約
4
第 4 段
積み上げた上で初めて腑に落ちる層
— / 5