0
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?

「最初は1ファイル」で攻めろ!AIはプロトタイプ開発を加速させる最高のツール

0
Posted at

最初のプロトタイプ(試作品)段階で完璧な設計を目指す必要はまったくありません。

AIツールが優秀な今こそ、「最初はあえて1ファイルに全部書いて爆速で動かし、コードが増えたらAIに分割させる」という戦略が最も効率的です。

今回は、AIを活用した爆速プロトタイプ開発のコツと、後からコードを綺麗にするリファクタリングの手順を解説します。

なぜプロトタイプは「1ファイル実装で始める」が良いのか?

アイデアを検証するときに最も大事なのは、とりあえず動かすまでの「スピード感」です。
動かしてみると思っていたのと違うことは多々あります。

1つのファイルに全コードを詰め込んでAIに書かせるのが一番速く、AIも迷いなく機能します。
「まず動くものを作る」ことを重視して、クライアントと打ち合わせで軌道修正することが大事です。

「1,000行の壁」とトークン消費の罠

1ファイルでプロトタイプの開発を進めていくと、機能が増えるにつれてコードがどんどん長くなります。ここで注意したいのが「1,000行の壁」です。

プロトタイプが1,000行以内に収まる規模であれば問題はないのですが、規模が大きくなってくると以下のような問題が発生します。

AIの挙動が不安定になる

一度に読み込む情報量が多くなり、AIが重要な部分を見落としたり、変なコードを生成しやすくなります。

※最近のモデルはコンテキストの扱いが上手になってきているので、今後は改善されていく方向にあります。

トークン消費が増える

AIはコードを読むたびに「トークン」という消費単位を使います。ファイルが大きいと、少しの修正でも大量のトークンを消費し、利用料金や回数制限に影響します。

AIに頼む「ファイル分割リファクタリング」

コードが増えてきたら、AIに依頼してファイルを役割ごとに分割してもらいましょう。

プロンプトの例:

このファイルにまとまっているコードを、
機能ごとのモジュールに分割してリファクタリングしてください。
動作や外部の挙動は一切変更せず、保守性を高める配置にしてください。

AIは既存コードの切り分けが得意です。例えば、以下のように綺麗に分けてくれます。

  • main.js: 全体の実行エントリーポイント
  • api.js: 外部通信の処理
  • ui.js: 画面描画の処理

こうして分割すると、AIが次からの修正で「必要なファイルだけ」を読めば済むようになり、応答の精度が上がり、トークン消費も抑えられます。

ファイル分割後は「仕様書」でAIの迷子を防ぐ

ファイルを分割したら、ひとつだけ重要な作業があります。「どのファイルが何を担当しているか」の目次(仕様書)を作っておくことです。

プロジェクトのトップフォルダに README.md や STRUCTURE.md、 SPECIFICATION.md を作成し、以下のように記載します。

ファイル構成と役割

  • main.js: アプリの起動および全体のルーティング担当
  • api.js: バックエンドAPIとの通信担当
  • ui.js: DOM操作および画面レンダリング担当

AIツール(CursorやGitHub Copilotなど)は、作業を開始する前にプロジェクト内の設定や仕様書を検索します。この「役割ガイド」があることで、AIが関係ないファイルを誤って書き換えたり、同じ関数を重複して作ることを抑制できます。

プロトタイプは試作品と割り切って捨てる

プロトタイプで動くプログラムが完成しても、「試すための道具」であり、そのままリリースするものではありません。

「動き」を確かめるためのプロトタイプと、セキュリティや品質を担保した本番用コードは別物です。自分の中で「動く確信」が得られたら、そのプロトタイプを仕様書代わりにして、改めてクリーンな構造で書き直します。

まとめ

  • 最初は1ファイルで実装のスピード感を最優先にする
  • 1,000行を超えたらAIにファイル分割(リファクタリング)させる
  • ファイル役割を仕様書に書いてAIをサポートする

頭の中にあるアイデアを爆速で形にできるよう、ぜひ実践してみてください!

0
0
0

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
0
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?