はじめに
最近よく聞く「AIでアプリ開発」ですが、実際のところどこまでできるのか気になり、Flutterでシンプルなモバイルアプリとして動くゲームを1つ作ってみました。
今回作ったのは、いわゆる神経衰弱(カードマッチング)ゲームです。
- AIに丸投げすればアプリは完成するのか?
- どこまでAIが使えて、どこで人間が介入する必要があるのか?
このあたりを、自分の体験ベースで正直にまとめてみます。
この記事でわかること
- AIを使ったFlutter開発のリアルな進め方
- AIが得意な領域 / 苦手な領域
- 実際に詰まったポイントとその対処
作ったもの:神経衰弱ゲーム
シンプルながら、スマホで気軽に遊べるモバイルアプリとして、ちゃんと遊べるレベルのゲームを目指しました。
主な機能
- カードのペアマッチング(神経衰弱)
- 難易度4段階
- ランク評価(S〜D)
- ハイスコア保存
- タイマー / 手数カウント
- 効果音(アセットなしで生成)
AIとの開発スタイル
今回の開発では、主に GitHub Copilot を使用しました。
あらかじめ、
- プロジェクト構成
- 画面ごとのクラス分割
- 実装したい機能
と要件から設計を定義し、それをもとにAIにコード生成をさせる形で進めました。
いわゆる、**AI駆動開発(AI主導で実装を進めるスタイル)**です。
AIが得意だったこと
実際に使ってみて感じたのは、
**「ある程度パターンが決まっている処理にはかなり強い」**という点です。
- 要件に沿ったロジックの実装
- 画面レイアウトのベース作成
- クラス構造のひな形生成
多少のレイアウト崩れはあったものの、
処理ロジックに関してはほとんど修正なしで動くレベルでした。
工夫が必要だったこと(AIの苦手ポイント)
一方で、細かい部分ではいくつか課題もありました。
- 効果音がうまく再生されない
- レイアウトが一部見切れる
- UIの細かい調整が甘い
このあたりは、
「動くコード」は出せるが「完成度の高い体験」は別
という印象でした。
最終的には人の手で調整・デバッグする必要があります。
やってみてわかったこと
実際に開発してみて感じたことは以下です。
AIを使った開発は、
「楽になる」ではなく「速く試せる」
というのが一番しっくりきました。
- 実装スピードは確実に上がる
- 試行錯誤の回転が早くなる
- ただし最終的な品質は人間次第
おわりに
「AIでアプリを作る」というより、
AIとペアプログラミングしている感覚
が一番近いと感じました。
個人開発との相性はかなり良いので、
- 何か作ってみたい人
- アイデアをすぐ形にしたい人
にはかなりおすすめです。