「ChatGPT」を使ったコードの書き直しと改善–有用ではあるが注意点も

  • 2023.06.19
  • AI
「ChatGPT」を使ったコードの書き直しと改善–有用ではあるが注意点も

この数カ月間で、「ChatGPT」のコード作成能力を検証してきた。ChatGPTは「生成AI」と考えられており、プロンプトからコードを作成する機能は、確かに生成と呼ぶにふさわしい。これまでの記事では、正常に機能する「WordPress」プラグイン一式の作成や、主要言語マイナー言語の両方を含む多数の言語でのコード記述を紹介してきた。

しかし、最近の実験でChatGPTに別の能力があることに気づいた。それは、コードを読み取って分解する能力だ。この能力にそれとなく気づいたのは、ChatGPTをデバッグ支援ツールとして使用したときだった。小さなコードブロックとエラーメッセージを入力すると、ChatGPTはミスがあった場所を示すことができた。

だが、今回の記事では、ChatGPTをコードの理解に役立てる方法や、コードの書き直しに利用できる可能について紹介する。これはかなり重要なことだ。

「JavaScript」について説明させる

これを説明するために、まずJavaScriptの小さなコードブロックを取り上げる。入力値が通貨かどうかを判定するこのコードは、1行目と3行目に比較的難解な正規表現が使用されている。この部分をChatGPTに手伝ってもらうことにする。

提供:Screenshot by David Gewirtz/ZDNET
提供:Screenshot by David Gewirtz/ZDNET

まず、このコードが何を実行するのかをChatGPTに説明してもらおう。これは非常に強力な機能であり、他のプログラマーからコードを引き継いでいる場合には特に有用だ。ChatGPTの説明が正しいという保証はないが、コードがどのように機能するかを感じ取ることができれば、時間を節約できる可能性がある。使用したのは以下のプロンプトだ。

以下のコードについて説明してほしい

コードブロックを貼り付けたところ、ChatGPTから次のような答えが返ってきた。

提供:Screenshot by David Gewirtz/ZDNET
提供:Screenshot by David Gewirtz/ZDNET

この機能によって興味深いことを実行できる。たとえば、ChatGPTにコードの書き直しをさせることが可能だ。一例として、ChatGPTに次のように頼んでみた。

以下の行を書き直して、正規表現を使わないようにしてほしい。

return !isNaN(n) && n >= 0 && /^\d+(\.\d{1,2})?$/.test(str);

以下の回答から、コードを簡潔に保つ正規表現の力と、既存のコードに対応して書き直すChatGPTの能力の両方が分かるはずだ。

提供:Screenshot by David Gewirtz/ZDNET

続きは ZDNet へ

AIカテゴリの最新記事