2023/12/29AWSアプリ開発案件が終わったので、初心者の方に参考になれば。
まず、ChatGPTを契約します。頻繁に使うので有料版にしてください。元は取れます。またはClaudeでもいいかもしれません。Bard? あれは見当違いの回答が多いのでやめておいた方がいいです。
コードを実行します。上手く動いたように見えても内部でエラー吐いている場合があるので、毎回ログを確認します。
エラーが出ていたら、コピペしてChatGPTに貼り付け、ついでにソースコードも貼り付けます。「日本語で答えてください」と付け加えておきます。
すると、日本語でエラーの説明と対策が出てきます。対策の中で、確認をした上で、ログに出力させたりした内容を貼り付けて聞いたり、深掘りします。
すべてのバグが解決するわけではないですが、上記をした結果怪しい点が浮かんできます。それについて、○○だったという場合どうなるか? と聞いていきます。こちらからも積極的に情報提供していきます。
ChatGPTは時々、前に書いたことを忘れているので、コードを盲目的に信じないでください。よく見て、「あれ、これ変じゃない?」と思ったこと、例えば古いバージョンのSDKをインポートしようとしている、言語のバージョンが古い、前に出力していたことが今度は抜けているとかありますので注意します。
おまじないとして、頭に「あなたは優秀なプログラマです」と付けるのいいと聞きました。褒めたり詰めたりするのが関係するかわかりません。私はフラットな感じで聞いてます。
0から生成するのもアリですが、デバッグは相当する部分のコードを貼って、「ここはどうなのか?」と聞くのが良いです。
どちらにしても、今は只のプログラマは初心者でもAI使えばできるので、仕様を読み解いて、この仕様はおかしくないですか? と設計者に言える人でないと務まりません。コミュ障で可能と言われたITですが、そうでもないです。
ただ、疲れてくると、惰性で、エラーとコード貼り付けてなんとかして、を繰り返してしまうことがあります。そんなときは気分転換をお勧めします。風呂に入っているときにバグの直し方を思いつくことなんてよくあります。
デバッグは「考えなくなったら負け」です。同じ質問していると、AIと言えども同じ返答しかできなくなります。新しい切り口でバグを見直すのが大切です。以前は、先輩とかに見てもらってアドバイスを貰って解決したものです。1日悩んだ物が5分のミーティングで解決することがままあります。仕様の見落とし、見方の固定化、やらなくていい処理とか。
こういったものに気づけば、バグはめんどくさいものではなくなるでしょう。
コメント