AI支援開発入門 2025年12月25日

vibe codingからAI支援開発へ:正しい移行ステップ

vibe codingの問題点を踏まえ、より安全で効率的な「AI支援開発」への移行方法を解説。AuthorからEditorへの役割変化、具体的なワークフロー、チェックリストを紹介します。

川西智也

合同会社ロイヤルピース 代表

vibe codingからAI支援開発へ

vibe codingは終点ではない

vibe codingには多くの問題があります。しかし、この記事の目的は「AIを使うな」ということではありません。

目的: vibe codingから「AI支援開発」へ移行すること

vibe codingとAI支援開発は、似て非なるものです。


vibe coding vs AI支援開発

両者の違いを整理しましょう。

観点vibe codingAI支援開発
姿勢AIに「任せる」AIを「使う」
レビューAccept All慎重にレビュー
理解理解しない理解してから使う
責任AI任せ人間が責任を持つ
スキル萎縮する維持・向上する
品質運任せ担保する

核心的な違い:

  • vibe coding: 人間が 受動的
  • AI支援開発: 人間が 能動的

AI支援開発の原則

AI支援開発には、いくつかの原則があります。

原則1: AIは「ツール」であり「代替」ではない

AIはハンマーのようなもの。ハンマーが家を建てるのではなく、大工がハンマーを使って家を建てます。

原則2: 生成されたコードの責任は人間にある

「AIが書いたから」は言い訳になりません。コードベースにマージした時点で、あなたの責任です。

原則3: 理解できないコードは使わない

説明できないコードを本番環境に入れてはいけません。

原則4: AIの限界を理解する

AIには限界があります。セキュリティ、パフォーマンス、保守性について、AIを過信しないこと。

原則5: スキルを維持する

AIを使いながらも、自身のスキルを維持・向上させる努力を怠らないこと。


ワークフローの変革

vibe codingからAI支援開発への移行には、ワークフローの変革が必要です。

vibe codingのワークフロー:

1. プロンプトを入力
2. AIが出力
3. Accept All
4. 動作確認
5. 完了

AI支援開発のワークフロー:

1. 要件を明確化
2. 設計を行う
3. タスクを分割
4. プロンプトを作成
5. AIが出力
6. コードをレビュー
   - セキュリティチェック
   - パフォーマンスチェック
   - 保守性チェック
7. 必要なら修正を依頼
8. テストを実行
9. リファクタリング
10. ドキュメント作成
11. 完了

工程は増えますが、品質は大幅に向上 します。


レビューのチェックリスト

AIの出力をレビューする際のチェックリストを用意しましょう。

セキュリティチェック:

  • ユーザー入力はサニタイズされているか
  • SQLインジェクションの可能性はないか
  • XSSの可能性はないか
  • 認証・認可は適切か
  • APIキーや秘密情報はハードコードされていないか

パフォーマンスチェック:

  • N+1問題はないか
  • 不要なループはないか
  • 適切なインデックスが使われているか
  • メモリリークの可能性はないか

保守性チェック:

  • 関数は30行以下か
  • 単一責任の原則を守っているか
  • 命名は適切か
  • 重複したコードはないか

テストチェック:

  • ユニットテストはあるか
  • エッジケースはカバーされているか
  • テストは通っているか

AI開発プロンプトエンジニアリング入門

AI支援開発では、プロンプトの質 が重要です。

悪いプロンプト:

ユーザー管理機能を作って

良いプロンプト:

以下の仕様でユーザー管理APIを作成してください:

【機能】
- ユーザー一覧取得(GET /api/users)
- ユーザー詳細取得(GET /api/users/:id)
- ユーザー作成(POST /api/users)
- ユーザー更新(PUT /api/users/:id)
- ユーザー削除(DELETE /api/users/:id)

【技術スタック】
- Express.js
- PostgreSQL(Prismaを使用)
- JWT認証

【制約】
- 各関数は30行以下
- エラーハンドリングを含める
- 入力バリデーションを含める

【命名規則】
- 関数名: camelCase
- 変数名: camelCase

具体的であればあるほど、AIの出力品質は向上します。


AI開発の段階的な改善プロセス

vibe codingからAI支援開発への移行は、段階的に 行いましょう。

Week 1-2: 意識の変革

  • Accept Allをやめる
  • AIの出力を読む習慣をつける
  • 「なぜこうなっているか」を考える

Week 3-4: レビューの導入

  • セキュリティチェックリストを使う
  • 問題を発見したらAIに修正を依頼
  • 自分でも修正を試みる

Week 5-6: プロンプトの改善

  • 具体的なプロンプトを書く
  • タスクを分割して依頼
  • 制約条件を明示

Week 7-8: テストの導入

  • AIにテストを書かせる
  • CIで自動実行
  • テストファーストを試す

Week 9-10: リファクタリング

  • AIの出力をリファクタリング
  • コード品質ツールを導入
  • 継続的な改善

チームでの実践

チームでAI支援開発を実践する際のポイントがあります。

ポイント1: ガイドラインを作成

  • AIの使用方針を明文化
  • レビュープロセスを定義
  • 禁止事項を明確に

ポイント2: レビューを必須に

  • AI生成コードにはレビューを必須
  • ペアレビューを推奨
  • セキュリティレビューを定期的に

ポイント3: 教育を行う

  • AIツールの適切な使い方を教育
  • アンチパターンを共有
  • ベストプラクティスを共有

ポイント4: メトリクスを取る

  • AI使用率
  • バグ発生率
  • セキュリティ問題の発生率
  • 生産性の変化

未来への展望

AIコーディングツールは進化し続けます。

予想される進化:

  1. より高品質な出力

    • セキュリティを考慮したコード生成
    • テストを自動生成
  2. より深いコンテキスト理解

    • プロジェクト全体を理解
    • 既存コードとの整合性
  3. リアルタイムレビュー

    • 生成時にセキュリティチェック
    • 問題を自動で指摘

しかし、どれだけAIが進化しても、人間の判断は必要 です。


この事例から学ぶべき教訓

「vibe codingからAI支援開発へ」から学ぶべきことは以下の通りです。

  1. vibe codingとAI支援開発は別物

    • 受動的 vs 能動的
  2. AI支援開発には原則がある

    • ツールとして使う、責任は人間に
  3. ワークフローを変革せよ

    • レビュー、テスト、リファクタリングを導入
  4. プロンプトの質が重要

    • 具体的に、制約を明示
  5. 段階的に改善せよ

    • 一度にすべてを変えようとしない

まとめ:重要ポイントの振り返り

  • vibe codingとAI支援開発は 別物
  • AI支援開発の原則:ツールとして使う、責任は人間
  • ワークフローを変革 :レビュー、テスト、リファクタリング
  • プロンプトの質 が出力の質を決める
  • 段階的に改善 :一度にすべてを変えようとしない
  • チームでの実践 :ガイドライン、レビュー必須、教育
  • AIが進化しても 人間の判断は必要
  • 教訓:vibe coderから「AI支援開発者」へ進化せよ

実践的なスキルを習得しませんか?

ブログで学んだ知識を、研修で実践に変えましょう。