概要
- 最新のAI開発ツール を約4週間試用した体験談
- LLM(大規模言語モデル)によるコーディング支援 の利点と限界を整理
- 主要プロダクト(Copilot, Claude, Gemini等)の比較
- 最適な利用シーンと苦手分野 の具体例を提示
- 現時点での推奨ツール や今後の展望について総括
LLM時代のソフトウェア開発支援ツールの実態
- LLM(大規模言語モデル) の導入は簡単、学習コストほぼ不要
- 既存フローに合わなければ無理に使う必要なし
- LLMは魔法の杖ではなく、PoC(検証段階)以降はコード理解力が必須
- 中規模以上のコードベースでは構成力が弱く、混乱しやすい
- 成熟し、ドキュメントが充実したコードベースでの性能向上
- 明確な指示がないと成果が出にくい特性
- 主流言語・フレームワーク以外ではパフォーマンス低下
- ドキュメントや仕様理解の時間が減り、開発者スキル低下の懸念
LLMエージェントの仕組みと現状
- 「エージェント」とはLLMにAPI(ツール)を呼ばせる仕組み
- LLMにHTTPサーバーリストを渡し、JSONでやり取り
- サーバーからの応答をLLMに再入力しループ
- 実態はAPIコールの繰り返し、魔法や自己反省機能は無し
- エージェントが使う主なツール
- コードナビゲーション(ファイル読み込み、grep等)
- ファイル編集
- シェルコマンド(lint, type check, test実行)
- Web検索やURL取得
- MCPサーバー (Githubリポジトリ検索等の構造化データ提供)は、LLMとの相性が良い
プロダクト共通の課題
- 最大の問題は「安定性」
- モデルの頻繁なアップデートや価格改定で予測困難
- ワークフローや設定の都度見直しが必要
- 長期的な信頼性や再現性に難あり
実際の利用・検証内容
- Python, TypeScript, Rust, Flutter での開発・リファクタリング
- PoC以降やレアな部品(FlutterのToken Field等)での失敗例
- Claude Opus 4.1やGPT 5でも複雑なFlutterウィジェット実装に失敗
- 定番コンポーネントから外れると途端に弱い
主要モデルの特徴
- Claude 4 Sonnet / 4.1 Opus :エージェントワークフローに最も強い
- Gemini 2.5 Pro :Googleの運用体制が不安定で実用性に難
- GPT 4.1/5 :厳格なガイドライン下でのみ良好、ツール連携で改善可能
- ローカルモデル :現状では大規模クローズドモデルに敵わず、速度・精度ともに劣る
代表的なプロダクト比較
- Github Copilot
- 月額10ドル、GPT4.1無制限・Claude 4等も利用可
- VSCode依存が強く、設定や機能追加で複雑化
- カスタマイズ性高いが、毎月の設定見直しが必要
- Claude Code Pro
- 月額20ドル、Claude 4 Sonnet無制限(5h毎リセット)
- ターミナル主体で再現性・環境構築がしやすい
- UIやVimモードの質は低いが、IDE非依存で安定
- Gemini CLI / Jules
- 価格体系が複雑で評価困難
- モデル自体は優秀だが、Googleのプロダクト運用が不安定
- AIファーストIDE(Kiro, Cursor, Windsurf等)
- 価格や中身が不透明、無料トライアルも機能しないケース多発
- LLMの活用にはフルIDEは過剰
理想的なLLMツール像
- ターミナル主体+Webビュー併用の軽量クライアント
- IDEのインターフェースはLLMワークフローには不要
- 100%ターミナルも情報量が不足しがち
言語ごとのパフォーマンス
- Rust :コンパイラの出力が明快でLLMと相性抜群
- Python :型付けが弱いためLLM支援には不向き、型アノテーション必須
LLMの得意な使い方
- 標準仕様の実装やテストコード生成
- Rustのtrait実装や統合テストのボイラープレート作成
- Sentry等のエラー修正サポート
- 新技術スタックのキャッチアップ
- 大量ドキュメントの要約・実装支援
- 小規模なCLIツール等の高速生成
LLMの弱点・課題
- 複雑化・コード重複・開発者スキル低下を招きやすい
- フロントエンド(特にFlutter)は保守性・拡張性に難
- マジックナンバー多用、キーボード操作や複雑UIで破綻しやすい
- 人気言語・フレームワークへの依存性が強くなる傾向
結論・推奨
- 型安全・テスト重視のバックエンド開発にはLLMが有効
- フロントエンドは単純なUIや汎用コンポーネントには強いが、独自性や複雑さには弱い
- 現時点での推奨ツールはGithub Copilot
- コストパフォーマンスとカスタマイズ性が高い
- 機能や設定の見直しが必要な点に注意
LLMツールの導入は、用途・言語・プロジェクトの性質を見極めて選択・運用することが重要。