Skip to content

ADR-0001: TypeScriptの採用

ステータス

承認済み

コンテキスト

ぷよぷよゲームをWebブラウザで動作させるアプリケーションを開発する必要がある。 開発言語を選定するにあたり、以下の要件を考慮する必要がある:

  • ブラウザでの動作が必要
  • ゲームロジックの複雑性に対応できる型安全性
  • テスト駆動開発を実践できる環境
  • 開発効率とメンテナンス性

決定

TypeScriptを開発言語として採用する。

理由

  • 型安全性: 静的型付けによりコンパイル時にエラーを検出でき、ゲームロジックの実装において高い安全性を確保できる
  • 開発効率: IDEの補完機能やリファクタリング支援が充実している
  • テスト環境: Vitestなどの優れたテストツールが利用可能
  • エコシステム: npmによる豊富なライブラリとツールが利用可能
  • ブラウザ互換性: TypeScriptはJavaScriptにトランスパイルされるため、すべてのモダンブラウザで動作する

結果

良い結果

  • 型による安全性の向上
  • 開発効率の向上
  • テスト駆動開発の実践が容易

悪い結果

  • ビルドプロセスが必要
  • 学習コストが発生する可能性