第08章:Node/TSの方針(最新版より“安定”)🧩

TDDって「サクサク回せる環境」が命だよね🧪💨 なのでこの章は、“新しさ”より“安定”を優先して、バージョン違いの沼を回避するのがゴールだよ〜😊💖
🎯 この章のゴール
- Node.js と TypeScript の採用方針を決められる✅
- チーム/自分のPC差でテストが落ちる事故を減らせる✅
- 「なんか動かない…」の原因が **“バージョンかも?”**ってすぐ気づける✅
1) まず結論:2026/01/19 時点のおすすめ 🌟
✅ Node.js:LTS(安定版)を使う
- Node は Current(最新) と LTS(安定) があるよ
- TDD教材では LTS を推奨(突然の破壊的変更に巻き込まれにくい)
- 2026/01 時点:v24 が Active LTS、v25 は Current(最新系)だよ📌 (nodejs.org)
✅ TypeScript:安定版をプロジェクトに固定
- 2026/01 時点、npm の
typescript最新は 5.9.3(安定)📌 (NPM) - TypeScript 6.0/7.0 の大きい動きも出てきてるので、教材ではまず 5.9.x を固定して堅くいくのが安心だよ😊 (Microsoft for Developers)
2) “安定”って具体的に何するの?🧠💡
ここが超たいじ!👇
✅ やることは3つだけ
- Node は LTS を使う(今なら v24)
- TypeScript は devDependency に入れて固定(例:5.9.3)
- プロジェクトに「このバージョン使ってね」情報を残す(ピン留め)
3) 🧪 手を動かす:バージョンを固定して「環境差ゼロ」を作る
この教材では、Windows でラクに固定できる Volta を推すよ〜🤖✨ (公式も Windows は winget をおすすめしてるよ📌) (Volta)
3-1) Volta を入れる(バージョン管理の土台)🧰
PowerShell(またはターミナル)で:
winget install Volta.Volta
入ったか確認:
volta --version
もし
voltaが見つからなかったら、VS Code / ターミナルを再起動してね🔄(PATHが反映されてないだけが多いよ〜)
3-2) Node を LTS にする(今なら v24)🟩
まずは LTS を入れる:
volta install node@lts
確認:
node -v
npm -v
2026/01 時点だと、LTS の最新版は v24 系になってるはずだよ(Node の LTS は v24 が “Latest LTS” 表示)📌 (nodejs.org)
3-3) プロジェクトを作って “ピン留め” する📌✨
フォルダ作って移動:
mkdir tdd-ts-2026
cd tdd-ts-2026
npm init -y
このプロジェクトで使う Node を固定(おすすめ:LTSのメジャー固定):
volta pin node@24
✅ package.json に "volta": { ... } が増えてたら成功だよ🎉
(これで「別PCでもこのNodeが使われる」状態に近づく!)
3-4) TypeScript を “プロジェクトに固定” する🧷
TypeScript を devDependency に入れる(2026/01 時点の安定最新版は 5.9.3)📌 (NPM)
npm i -D typescript@5.9.3
確認:
npx tsc -v
3-5) “型チェック用コマンド”を用意しておく(TDDの回転が良くなる)🌀
package.json の scripts にこれ追加(手で編集してOK)👇
{
"scripts": {
"typecheck": "tsc --noEmit"
}
}
実行してみよう:
npm run typecheck
まだ
tsconfig.jsonは次章で作るから、ここは「コマンド入口を作れたらOK」って感じで😊
4) ✅ チェック(この章の合格ライン)🎓💖
node -vが v24 系になってる(LTS)🟩 (nodejs.org)npx tsc -vが 5.9.3 になってる🧷 (NPM)package.jsonに volta の pin 情報が入ってる📌npm run typecheckという入口ができた✅
5) つまずきポイント集(ここで詰まりがち🥺)🧯
🧨 (A) volta が認識されない
- VS Code を再起動(ターミナルだけじゃダメな時ある)🔁
- それでもなら
where voltaで場所を確認👀
🧨 (B) Node のバージョンが変わらない
where nodeで どの node が呼ばれてるか確認しよ!- Volta の node が優先されてない時は PATH 順序の問題が多いよ💦
🧨 (C) EBADENGINE が出た(npm install で怒られる)
- だいたい「Node が古いよ!」って意味
- 例えば Vitest 系ツールは Node 18+ が最低ラインのことがあるよ📌 (GitHub) → 今回は v24 LTS だから基本は安全圏🏖️
6) 🤖 AI の使い方(この章の“勝ちパターン”)
AI は「原因切り分け係」にすると強いよ💪✨ (丸コピ実装係にすると、逆に沼りやすい🥺)
🧠 そのまま貼って使えるプロンプト例
- エラー文を貼って👇みたいに聞くのがおすすめ!
以下のエラーを「原因カテゴリ」で分類して、最短の解決手順を3つ提案して。
カテゴリ例:PATH / Nodeのバージョン違い / npmキャッシュ / ESM-CJS / TypeScriptのバージョン違い
--- エラー ---
(ここにコピペ)
--- いまの状況 ---
node -v: (ここ)
npm -v: (ここ)
npx tsc -v: (ここ)
where node: (ここ)
7) まとめ(この章で得た“強さ”)💎
- LTS を選ぶだけで、TDDの失速がかなり減る🧪💨
- TypeScript はプロジェクトに固定が正義(グローバルは事故りやすい)🧷
- Volta で “このプロジェクトはこのNodeね” ができると、未来の自分が助かる🥹💖
次の第9章では、いよいよ tsconfig を最小&強め(strict)で組むよ〜🧷✨
その前に、もし今の package.json 見せてくれたら「ここ、より事故りにくくできるよ!」って軽く整えて返せるよ😊🎀