10
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Elixir(Phoenix)とTypeScriptで同じゲームをAIで作って比較してみた話

Last updated at Posted at 2025-12-24

はじめに

Kiroを使って、リバーシを作ってみました

最初にElixirで作ってみたのですが、同じ要求仕様を与えて、TypeScript(以下TSと記載します)でもつくり比較してみました。

見た目

TSバージョン

image.png

Elixirバージョン

image.png

特に見た目については、仕様に書いてないので、一般的なものになっていて、大差はありませんでした。
TSの方は、置ける駒の部分がハイライトするUIになってました。

クレジットの消費量と実行時間

各タスクのクレジット(課金の単位)と実行時間を比較してみました。クレジットの大きさでAIがどれだけ働いたかの目安になるとおもいます。
実行時間は、ローカルでコマンドが実行されていた時間の含まれます。

Elixirの場合

task Credits used Elapsed time
1. Phoenixプロジェクトのセットアップ 4.05 14m 17s
2. Game.Boardモジュールの実装 7.89 37m 12s
3. ターン管理とゲーム終了ロジックの実装 5.74 6m 20s
4. チェックポイント - コアロジックの確認 1.41 1m 10s
5. GameLive LiveViewモジュールの実装 5.62 3m 39s
6. UIテンプレートの実装 2.53 1m 21s
7. CSSスタイリングの実装 3.65 2m 30s
8. ルーティングと統合 4.9 3m 17s
9. 最終チェックポイント 1.16 49s

TSの場合

task Credits used Elapsed time
1. プロジェクト構造とコア型定義のセットアップ 3.84 8m 36s
2. Boardコンポーネントの実装 2.79 2m 39s
3. MoveValidatorコンポーネントの実装 4.45 4m 6s
4. GameEngineコンポーネントの実装 6.01 5m 27s
5. チェックポイント - コアロジックのテスト確認 0.77 1m 4s
6. GameStateManagerコンポーネントの実装 3.1 2m 43s
7. AnimationControllerコンポーネントの実装 4.11 4m 26s
8. UIRendererコンポーネントの実装 4.47 4m 31s
9. InputHandlerコンポーネントの実装 5.03 4m 38s
10. チェックポイント - すべてのコンポーネントのテスト確認 1.22 1m 17s
11. メインアプリケーションの統合 1.84 1m 26s
言語 Creditsの合計 Elapsed time合計
TS 37.6 41分
Elixir 37.0 71分

考察

Credits

Creditsの合計値は、ほぼ同じ値でした
Elixir版を作った後にアニメーション(駒が0.5秒に一枚づつひっくり返る)を仕様に追加しているので、TS版だけに、7. AnimationControllerコンポーネントの実装 (Credits 4.11)が入ってます。
これを差し引くとTSの方がちょっと小さくなりますが、誤差の範囲だとおもいます。

言語や、開発に使うフレームワークによる違いは意外にも少ない結果でした。

実行時間

Elixirの場合は、実行時間が長いが、コンパイルする時間があること一因とおもわれます。

Taskの構成

Elixirでは、Game.Boardモジュールにゲームのロジックが集約されているが、TSでは、いくつかのタスクに分かれています。
どちらか好ましいかは、状況によるとおもうので、良し悪しはなさそう。

この違いは、Phoenix を使うと半ば強制的に UI 部分は、Phoenixに任せ、ゲームのロジックの実装に注力する構成になるので、まあこうなるよね。と思いました。

総合評価

私は、ElixirのようにゲームのロジックをUIと分離してかっちり作る方が好みなんですが、この比較からいえる事はなにか、ChatGPTと相談して、まとめてみました。

TS 開発の評価

  • 分業的で自然
  • UI 主導の流れに合っている
  • AI が段階的に進めやすい
  • 今回の条件では 非常に安定

Elixir 開発の評価

  • ドメイン中心で自然
  • Phoenix がレールを敷いている
  • AI が迷いにくい
  • 今回の条件では 同程度に安定

リバーシを作る程度では、大きな差はありませんでした。

10
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?