コンテンツに移動
デベロッパー

AI コーディング アシスタントを使用するための 5 つのベスト プラクティス

2025年10月15日
https://storage.googleapis.com/gweb-cloudblog-publish/images/5_Best_Practices_for_Using_AI_Coding_Assis.max-2500x2500.png
Kari Loftesness

Business Lead, Cloud Developer Experience

Jason Davenport

Developer Advocate

※この投稿は米国時間 2025 年 10 月 8 日に、Google Cloud blog に投稿されたものの抄訳です。

包丁を持ってさえいれば、玉ねぎを効率的にみじん切りにしたり、にんじんを千切りにしたりできるでしょうか。答えはもちろん「ノー」です。ツールにアクセスできるからといって、そのツールを使いこなせるとは限りません。望む結果を得るには、適切なテクニックを学ぶ必要があります。

AI コーディング アシスタントも例外ではありません。これらは、今すぐ利用できる、強力で新しい開発者ツールです。しかし他のツールと同様に、「いつ」「どのように」使うかを理解してこそ真価を発揮します。

では、AI コーディング アシスタントを最大限に活用するにはどうすればよいでしょうか。その答えを探るために、我々は Google Cloud デベロッパー エクスペリエンス チームの複数のエンジニアに協力を依頼しました。複雑なアプリ開発や移行プロジェクトを進める中で、実際に Gemini CLIGemini Code AssistJules を積極的に使用してもらいました。これらのエンジニアリング スプリントを通じて、より良い成果につながった5 つのベスト プラクティスを発見しました。この知見を共有することで、ツールへのアクセスを 「AI の専門知識」に変えるサポートができればと考えています。

ツールを選択する際はユースケースを考慮する

AI を最大限に活用するには、慎重な計画が必要です。コーディングを始める前に、プロジェクトの要件と、完了する必要がある関連タスクについて考えてみましょう。この事前検討により、どの AI ツールから始めるべきか、後でどのツールが役立つ可能性があるかを明確にできます。Google のデベロッパー ツールにはそれぞれ異なる強みがあるため、作業に適したツールを選択する必要があります。

作業の複雑さによっては、タスクを達成するためにエージェント フレームワークを使用しない場合もあります。新しい関数を作成する場合、インライン生成を使用します。アプリを v1 から v2 に移行する場合、エージェントを使用して、必要なすべてのファイル変更を計画します。エンジニアリング スプリント全体を通して、複数のファイルが関係する大規模な移行を支援するために、Gemini CLI などのツールを使用しました。特定の関数を記述する際には、Gemini Code Assist によるインライン生成が開発者のフローに合っていました。適切なツールを選択したら、目標に向けてそのツールをトレーニングできます。

基礎的な作業でツールをトレーニングする

ほとんどの生成モデルは自然言語に基づいて動作します。多くの例で、コードベースのドキュメント化にも AI を活用すると、生成のパフォーマンスが向上します。早い段階でドキュメント化することで、AI アシスタンスのワークフローを「シフトレフト」し、後でより高品質な出力を生成します。これには、必要に応じて README を生成したり、既存のコードに基づいて単体テストを生成したりすることが含まれます。

この作業を確認する際に、AI が理解に苦しむコードの特異性を見つけることもできます。これにより、将来的な生成に影響が出る可能性があります。このトレーニングを修了してから、次のベスト プラクティス(AI を使用してコードの計画を立てる)に進むことをおすすめします。

計画を策定する

開発者の仕事の大部分は計画であるように、AI モデルも同じです。AIツールを使って実行計画を立てたり修正したりする時間を多めに取ることで、複雑なタスクでもより良いコードを生成しやすくなります。効率的な計画を作成するには、いくつかの方法があります。

  • 解決する問題を完全に理解するために、要件ドキュメントを繰り返し作成します。

  • ソースコード分析を使用して、パッケージの依存関係やその他のランタイムの詳細など、現在のコード構造を把握します。

  • 生成されたコードが要件を満たしているか確認するためのテスト セットを作成します。

  • AI が問題を理解した内容に基づいて、どのファイルとフォルダを変更する必要があるかを明示した実行計画を作成します。

また、AI に段階的な計画(plan.md ファイルなど)を作成して保存するように指示する必要があります。これにより、ユーザーと AI の両方が、実行前に一時停止して今後の手順を検討するようになります。AI ツールは、ユーザーが管理することで最大限に活用できます。複雑で大まかな課題を、扱いやすい複数のコンポーネントに分解します。たとえば、大規模な移行では、一度に複数のサービスを移行するのではなく、一度に 1 つのサービスを移行することをおすすめします。最後に、新しい計画のマイルストーンを実行する前に承認を求めるよう AI に指示します。この重要なステップにより、開発者はプロジェクトを管理できます。

プロンプト エンジニアリングを優先する

新しいチームメンバーにタスクの範囲を伝えるときと同じように、できるだけ関連性の高いプロンプトを作成する時間を確保してください。成功に必要な情報が何かを考え、それらすべての詳細をAIツールに提供します。AI アシスタントにプロンプトを送信する前に、Gemini や他の chatbot ツールにプロンプトの改善を依頼することもできます。

エージェントによるコーディング フローでも、プロンプトは依然として不可欠です。使用する特定のモデルを理解することで、より優れた反復結果を得ることができます。リクエストと期待する成果を具体的に示します。モデルはトークン予測器であるため、自分の考えを整理して、次に何をしてほしいかを明確に伝えることは、モデルにプロンプトを与える場合でも、チームメイトにタスクを確認する場合でも有効な方法です。

セッション間のつながりを把握する

アプリケーション全体を壊さずに触ることができないコードに遭遇したことがあるでしょう。それがコンテキストです。日々のパフォーマンスを向上させる最も効果的な方法は、各作業セッションの最後にコンテキスト ファイル(例: GEMINI.md)を作成することです。このファイルには、大まかな指示、依存関係のバージョンに関する具体的な詳細、アーキテクチャ図などを含めることができます。この GEMINI.md ファイルは、次の AI アシスト セッションを開始するために使用できる「チートシート」をツールに提供します。

コンテキストを文書化することで、AI コーディング ツールの計画と実行の精度が大幅に向上します。また、ツールがプロジェクトと特定の作業スタイルを理解していることを確認します。スプリント中、私たちは毎営業日の終わりにすべての重要な学びをファイルに保存し、翌朝に AI がそのファイルにアクセスするように指示しました。これにより、中断したところから正確に再開できるようになりました。現在では、リポジトリと一般的なユーザーの好みに基づいて、より多くのレイヤード コンテキスト ファイルを保存するというアイデアも検討しています。使用可能なコードを作成する鍵は、モデルに適切なコンテキストを与えることです。


AI コーディング アシスタントの可能性はまだほんの一部しか明らかになっていません。Google は皆様とともに学び続けていくことを楽しみにしています。AI のアイデアをコンセプトから現実にする方法について詳しくは、今後の AgentVerse イベントにご参加ください。

Kari Loftesness、ビジネスリード、クラウド デベロッパー エクスペリエンス

Jason Davenport、デベロッパー アドボケイト

投稿先