📘 TypeScript基礎
📖 定義
TypeScriptはMicrosoftが開発したJavaScriptのスーパーセット言語です。JavaScriptに静的型システムを追加することで、コード作成時点でエラーを発見し、開発ツールの自動補完機能を向上させます。TypeScriptコードはコンパイルを通じてJavaScriptに変換されて実行されます。
🎯 比喩で理解する
契約書の比喩
TypeScriptを契約書に例えると:
JavaScript (口頭約束)
A: "明日の午後に会おう!"
B: "うん、わかった!"
翌日...
A: "なんで来ないの?"
B: "午後2時だと思ってたけど?"
A: "いや、午後5時って言ったよ!"
問題:
- 具体的な時間が明示されていない
- 誤解が発生
- 実行時点で問題発見
---
TypeScript (正式な契約書)
契約書:
- 日付: 2024年1月15日
- 時間: 午後5時ちょうど
- 場所: 江南駅2番出口
- 参加者: A、B (型を明示!)
利点:
- 明確な約束
- 誤解不可能
- 契約書作成時点で検証
- 法的効力
工場の比喩
JavaScript工場 (検品なし)
部品入荷:
- どんな部品でもOK
- サイズ確認なし
- 規格チェックなし
組立ライン:
- 組立中に問題発見
- "このネジが合わないね?"
- "この部品のサイズがおかしいけど?"
結果:
- 不良品発生
- 時間/コスト浪費
- 顧客不満
---
TypeScript工場 (厳格な検品)
部品入荷:
✓ サイズ測定
✓ 規格確認
✓ 品質検査
✗ 不良品返品
組立ライン:
- 部品が正確に合致
- 問題なく組立
- 迅速な生産
結果:
- 高品質製品
- 効率的生産
- 顧客満足
レゴブロックの比喩
JavaScript レゴ
- どんなブロックでも挿してみることができる
- 合うかどうかは挿してみないとわからない
- 大きな作品を作る時に混乱
TypeScript レゴ
- ブロックごとにラベル
- "このブロックは2x4ブロック"
- "この穴には2x4しか入らない"
- 合わないものは最初から挿せない
利点:
- 説明書を見て正確に組立
- ミス防止
- 大きな作品も問題なし