AI時代のアプリ開発におけるCursor活用の現実とコツ
最近話題の Cursor(AI搭載VSCode派生エディタ) を試したところ、開発効率は間違いなく向上するものの、「すべてが自動で完結するほど甘くはない」と実感した。
本記事では、実際に Cursorでアプリを作ってみた経験と、そこから見えた 効果的な活用方法をまとめる。
経験談:実際にCursorでアプリを作ってみた
今回は MermaidのようなDSLとASTによる図形生成ツール(中級程度の難易度)をCursorに作らせてみた。
試したパターン①:一気に作らせる
- 最初は 全体の構造と要件を一気にCursorに渡し、コードを一括生成。
- 何百行ものコードが一瞬で出てきたが、エラーが発生し、1時間考えさせても最終的に動作までたどり着かなかった。
試したパターン②:小さく分けて進める
- 次は作業を 小さく分割し、都度指示しながら進行。
- こちらは非常に効果的で、通常1日かかる内容が約2時間で完成できた。
学び①:ある程度のコーディングスキルは必須
AIがコード生成をサポートしてくれるものの、以下の能力は依然として必要だった:
- エラーやバグの原因を自力で追えるスキル
- 設計の意図や整合性を維持する能力
- 型やAST構造の整合性が崩れたときの復旧スキル
Cursorはあくまで パートナーであって代行者ではないと感じた。
学び②:Gitは必須の防波堤
CursorやLLMは「見えていないところまでコードを変更してしまう」ことがある。
このため、Gitをうまく活用して安全に進めることが極めて重要と実感した。
Git運用のポイント
- こまめに コミットを分ける(1作業=1コミット)
- LLM適用時は 必ずdiffを確認する
- LLMが出したコードは いきなりmainブランチに入れず、別ブランチで検証する
- 問題が出たときは git reset / revert で簡単に戻せる状態を維持する
よくある罠
失敗例 | 原因 |
---|---|
一気にLLMが全ファイルを変更 → 何が壊れたかわからなくなる | Git commitが粗い/diff確認せず |
LLMの出力を直接mainに反映 | 検証プロセスなし |
LLMに「関数Aだけ修正して」と頼んだのに他の関数も勝手に変更 | 全体diff確認せずマージ |
結論:AI時代の開発スタイルはこうなる
✅ 効果的な使い方
- 小さな単位でCursorを活用 → 一括生成は破綻しやすい
- Gitを駆使して巻き戻せる体制を作る → 安心してLLMを活用できる
- コードを読む・理解するスキルは依然として重要
❌ 避けるべき使い方
- 「Cursorに任せれば全自動でアプリ完成」という幻想
- Gitを使わずに 直接ファイルに上書き反映 → 破壊的変更の温床
まとめ
Cursorは間違いなく 開発効率を飛躍的に上げる武器になる。
ただし コーディングスキル+Git活用が前提。
LLM時代のアプリ開発は「人間+AIの協調」が基本スタイルになると実感した。
AIに任せすぎず、人間が設計と整合性管理を担うことで最高の効果が得られる。
みなさんのAI活用にもぜひ参考になれば嬉しいです。