ADR-0001: TypeScriptの採用¶
ステータス¶
承認済み
コンテキスト¶
ぷよぷよゲームをWebブラウザで動作させるアプリケーションを開発する必要がある。 開発言語を選定するにあたり、以下の要件を考慮する必要がある:
- ブラウザでの動作が必要
- ゲームロジックの複雑性に対応できる型安全性
- テスト駆動開発を実践できる環境
- 開発効率とメンテナンス性
決定¶
TypeScriptを開発言語として採用する。
理由¶
- 型安全性: 静的型付けによりコンパイル時にエラーを検出でき、ゲームロジックの実装において高い安全性を確保できる
- 開発効率: IDEの補完機能やリファクタリング支援が充実している
- テスト環境: Vitestなどの優れたテストツールが利用可能
- エコシステム: npmによる豊富なライブラリとツールが利用可能
- ブラウザ互換性: TypeScriptはJavaScriptにトランスパイルされるため、すべてのモダンブラウザで動作する
結果¶
良い結果¶
- 型による安全性の向上
- 開発効率の向上
- テスト駆動開発の実践が容易
悪い結果¶
- ビルドプロセスが必要
- 学習コストが発生する可能性