エラーが解消できない時のアプローチ方法
はじめに
開発をしていると「どうしてもエラーが解消できない」状況に陥ることは珍しくありません。
そんなとき、ChatGPTを活用して問題を整理・解決に導く方法を紹介します。
ポイントは以下の2つです。
- 会話のやり方を工夫すること
- エラーログを的確に提示すること
会話方法
手順1
[目的]する方法をいくつか教えてください
→ まずは「複数のアプローチ」を知ることが大事です。
一つの方法に固執せず、別のアプローチを試す価値があると認識しましょう。
手順2
私の方法はどれに該当しますか?
→ 自分のやり方を実際に提示し、ChatGPTに「それは提案のどの方法と同じか」を確認してもらいます。
これにより「やり方のズレ」を発見できます。
手順3
○○の不具合が出ます。解決策を教えてください
→ 優先度が高い、または推奨された方法をまず試します。
「最優先」や「推奨」というキーワードを意識して会話すると、ChatGPTが回答を整理しやすくなります。
手順4
修正後の現在の状況を説明する
→ 状況の変化(エラー内容が変わった、別の問題が出たなど)を伝えることで、次のステップを明確にできます。
手順5
ログの出力レベルを上げてそのログを提示する
→ ChatGPTはログの文言を手掛かりに原因を絞り込みます。
詳細なログを提示することで、より精度の高いアドバイスが得られます。
Tips
-
エラーメッセージを省略せず提示する
→ 部分的に抜粋すると原因が見えなくなることがあります。 -
試したことを時系列でまとめる
→ 「どこまで進んでいて、どこから動かないのか」を整理するだけで、解決に近づきます。 -
ChatGPTに「なぜその方法を推奨するのか」を聞く
→ 理由を理解することで、自分の知識として定着します。 -
修正案として出されたプログラムがものすごい改変されていたら「元のコードをなるべく変えずに対応してください」と伝える
→ 自分が読めなくなったら意味がないです。 -
プログラムだけに着目せず入力データと出力データも疑う
→ 変な入力データや出力データを用意していることが原因で動かないことも多いです。例えばXMLの構成やリクエストパラメータ、テーブルの構造などです。
おまけ
0からプログラムを生み出したい時の会話方法例
あなたはJavaエンジニアです。
SpringBootを使用してREST APIを作成します。
必要なファイルをそれぞれ教えてください。
ただし、自分自身がそのプログラムを読めないと意味がないです。
複雑になりすぎたら、「⚪︎⚪︎は省いていいのでもう少しスマートな構成にしてください」などと追加でお願いをしましょう。
最後に
エラーは必ずしもすぐ解消できるものではありません。
しかし、ChatGPTを活用して「ログを元に対話しながら切り分ける」ことで、行き詰まりから抜け出す可能性は格段に高まります。
大切なのは、正しい情報の提示と段階的な会話の積み重ねです。
この記事の手順を参考に、ぜひ次のトラブルシューティングに活かしてみてください。
Discussion