ともすたmedia

2023.03.24

ChatGPTをプログラミング学習に役立てる方法5選

記事を共有:

  • X
  • Pocket
  • クリップボードにコピー

その登場から、一気にAI界の話題をさらっている『ChatGPT』。まるで、人間と会話をしているようにAIと会話ができるとして、その賢さに驚愕している人が続出しています。

プログラミングでも、このChatGPTを役立てることができるのですが、どんな所に使ったら良いでしょう? ここでは、プログラミング学習に役立てる方法5選を紹介しましょう。

その前に注意。知識は古いです

ChatGPTは、質問をするとそれに対して答えてくれるので、まるで本当にことかのように感じますが、実際には誤りも含まれているので気をつけて利用しましょう。例えばここでは、「HTMLの最新バージョンは?」と質問をしてみます。すると、「HTML5」であると回答されます。

しかし実は、HTMLは2021年に「HTML Living Standard」が最新とされていて、これは間違いです。なぜこんな簡単な質問も間違えてしまうのか。それは、ChatGPTが「正しいかどうか」を判断していないためです。

ChatGPTのベースとなっている「GPT(Generative Pre-trained Transformer)」という技術は、深層学習の1つで「大規模言語モデル」と呼ばれるものです。これは、「ある言葉の次にはどんな言葉がつながるか」という可能性を探るもので、つまりChatGPTは「次につながりそうな言葉」をつないでいるだけで、それが真実のことであるかは判断していません(現状では)。

そのため、間違えた回答も真実かのように回答してしまいます。このあたりは、注意して利用しなければなりません。

1. プログラムの意味を聞く

では、そんなChatGPTをどのように活用したら良いでしょう? まず考えられるのは、プログラムコードの意味を教えてもらう方法です。

学習しているときに、意味が分からないプログラムコードが出てきたら、「次のJavaScriptのコードはどういう意味?」など、言語の種類とコードを書いて、プログラムコードを貼り付けましょう。

すると、そのコードの内容を解析して解説してくれます。

全体的な機能の説明から、各行の解説まで行ってくれるので、かなり理解しやすいでしょう。

2. プログラムの改善を依頼する

自分で作ってみたプログラムや、教材通りに作ったはずのプログラムが動作しない時や、「もう少しきれいに書けないかな?」というときに、「次のプログラムが動作しない原因と、改善点を教えて」などと投げかけてみましょう。

箇条書きで改善点などを列記してくれます。

3. プログラムを作ってもらう

プログラムを1から作ってもらうこともできます。仕様を説明して、「というプログラムをJavaScriptで作成して」などと記述すると、ほぼそのまま動作するプログラムを制作してくれます。

次のようなプログラムをJavaScriptで作って

・1から10の数字からランダムで1つ数字を準備して、これを問題とする
・入力窓に「1から10の数字で、好きなものをいってください」と表示して入力を受け付ける
・入力された数字と問題があっていれば「正解」と表示する
・不正解の場合で、問題の数字が入力された数字よりも小さい場合は「もっと小さいです」と表示する。大きい場合は「もっと大きいです」と表示する
・正解するまで、入力欄を表示して繰り返す
・正解したらプログラムを終了する

ここで生成されたコードを確認しながら、構造を学ぶことができます。

4. 問題を出してもらう

例えば、「while構文」について知ったら、ChatGPTに「while構文を使ったJavaScriptの問題を出して」とお願いしてみましょう。

ヒントまで含めて問題を出してくれます。また、その後で「答えを教えて」と入力すると、今の問題の回答を教えてくれます。こうして、プログラミング力を鍛えることができます。

5.サンプルデータを作ってもらう

データベースを学ぶときや、プログラムを作成するときに、ある程度の件数の「ダミーデータ」が欲しいときがあります。そんな時は、次のように箇条書きでお願いしてみましょう。

次の項目があるダミーデータをJSON形式で10件作って

・都道府県
・会社名
・電話番号
・メールアドレス
・メールマガジン許可(trueかfalseのどちらかの値)

件数が多い場合、途中で止まってしまいますが「続きを書いて」といえば、続けてくれます。

このように、ChatGPTはいろいろな作業をお願いすることができます。先の通り、ChatGPTを最初に使いはじめると「○○ってなに?」とか「○○のおいしいお店は?」など、その「知識」を期待して会話してしまうのですが、これではChatGPTの性能をまったく発揮することができません。

ChatGPTは、これまで蓄積されたプログラミング言語のバグの情報や、サンプルプログラムの内容やその解説など、「過去」の膨大な情報を蓄積しています。これをうまく引き出してあげれば、プログラミングの学習にものすごい力を発揮します。

是非うまく活用して、スムーズに学習を進めていきましょう。

一覧に戻る