PR※本記事にはプロモーション(アフィリエイト広告)が含まれています。

プログラミング学習にAIを活用しよう

プログラミングを学んでいると、自分の書いたコードがなぜ動かないのか分からず、手が止まる瞬間が何度もあります。エラーメッセージを読んでも意味が分からず、検索しても回答がバラバラで疲れてしまう。そんなとき、AIに聞くと自分のレベルに合わせて説明してくれるので、学習のペースを保ちやすくなります。

ただし、聞き方によって結果は大きく変わります。AIに「動くコード」をもらうだけだと、その場は進んでも、次に似たところで同じように止まります。この記事では、AIに答えのコードを書かせるのではなく、「なぜそうなるのか」を説明してもらう使い方に絞って、コピーして使える依頼文と、返ってきた説明の確かめ方をまとめます。対象は、プログラミングを学び始めた中高生から大人までです。

学習全般の考え方は勉強にAIをどう使う?正しい活用法、学校の課題で使うときの注意はレポート・課題でAIを使うときのルールとマナーも参考にしてください。

AIには「答え」ではなく「説明」を頼む

同じエラーでも、頼み方は2通りあります。

ひとつは「直したコードをください」。もうひとつは「なぜこのエラーが出るのか説明してください」。前者は、貼り付ければ動くかもしれませんが、自分の頭には何も残りません。後者は、返ってきた説明を読んで自分で直せたとき、その原因と直し方が経験として残ります。

たとえば、Pythonで平均を求める関数を書いて、空のリストを渡したら ZeroDivisionError が出たとします。答えのコードをもらうと「if文を足せば直る」で終わります。説明をもらうと「合計を要素数で割っているが、空のリストでは要素数が0になり、0で割ることになるから」という理由が分かります。理由が分かれば、別の場面で別の割り算を書くときにも、自分で気づけるようになります。

プログラミングの力は、エラーに出会い、原因の仮説を立て、直して確かめる往復の中で育ちます。AIは、この往復の「原因の仮説」の部分で、横についてくれる家庭教師のように使うのが向いています。往復そのものを肩代わりさせると、練習の機会を自分で手放すことになります。

説明を頼むと得られるもの

どれも「コードそのもの」ではなく「考え方」です。この記事では、その考え方を引き出すための頼み方を中心に紹介します。

エラーを説明してもらう依頼文

エラーの相談で一番大切なのは、AIに渡す材料と、AIに守ってほしい条件を両方書くことです。材料は3つ、「何をしたいか」「何が起きているか」「何を試したか」。条件は、直したコードより先に原因の説明を出すこと、そしてヒントを段階的に出してもらうことです。

次の文面は、そのままコピーして、角かっこの部分を差し替えれば使えます。

プログラミングを学び始めたところです。次のエラーの原因を理解したいです。

【したいこと】[例:リストの数字の平均を求める関数を作りたい]
【起きていること】[例:空のリストを渡すとエラーになる]
【試したこと】[例:print で中身を確認したが、原因が分からなかった]

【言語】Python
【エラー全文】
[エラーメッセージをここに貼る]

【コード】
[該当部分のコードをここに貼る]

お願い:
1. 最初は直したコードを出さず、エラーの意味と原因を、初心者に分かる言葉で説明してください。
2. そのあと、ヒントを3段階で出してください。第1段階は「どこを見ればよいか」、第2段階は「何が起きているか」、第3段階は「直し方の方向性」です。
3. 私が「次のヒント」と返すまで、次の段階には進まないでください。
4. 直したコードは、私が「答えを見せて」と言ったときだけ出してください。

この文面のポイントは3つあります。

1つ目は、エラー全文とコードの両方を貼ることです。エラーの一行目だけでは、AIも原因を絞り込めません。どの行で起きたかを示す部分も含めて、全文を貼ってください。

2つ目は、「直したコードより先に説明」と明記することです。何も書かないと、AIは親切心から、すぐ直したコードを出すことがあります。最初に条件として伝えておけば、説明から始めてもらえます。

3つ目は、ヒントを段階に分けてもらうことです。第1段階のヒントを読んだ時点で、自分で気づけることがあります。気づけたなら、そこで止めて自分で直してください。それが一番力になります。第2段階でも分からなければ、次のヒントを頼みます。それでも詰まったら、最後に答えを見ます。段階を踏んだうえで答えを見るのは、いきなり答えをもらうのとは別の経験になります。

うまくいかなかったときの戻し方

説明が難しすぎたときは、次のように返します。

今の説明が分かりませんでした。「[分からなかった言葉]」とは何か、中学生にも分かる例えで説明し直してください。

ヒントを読んでも直せなかったときは、「第1段階のヒントを読んで、私は [こう考えて、こう直しました]。でも [こうなりました]」と、自分が試したことをそのまま返します。試した内容を伝えるほど、AIは「どこでつまずいているか」を的確に判断できます。

自分のコードをレビューしてもらう

動いたコードも、AIに見てもらうと学びが増えます。ここでの目的は、「動かないコードを直す」ことではなく、「動いているコードの書き方を良くする視点」を知ることです。

レビューを頼むときも、答えを丸ごと書き換えてもらうのではなく、気づきを理由つきでもらう形にします。

次のコードを、初心者の学習用にレビューしてください。動作は確認済みです。

【言語】Python
【このコードの目的】[例:成績のリストから平均点を求める]
【コード】
[自分で書いたコードを貼る]

お願い:
1. 書き換えたコードを出す前に、気になった点を重要そうな順に3つまで挙げてください。
2. それぞれ「何が気になるのか」「なぜそう言えるのか」を説明してください。
3. 私が自分で直してみます。直したコードを貼ったら、もう一度見てください。
4. 好みの問題と、直したほうがよい問題は分けて教えてください。

「3つまで」と数を絞るのは、初心者のうちは指摘が多すぎると、どれから手をつければよいか分からなくなるからです。「好みの問題と直したほうがよい問題を分ける」ことも大切です。プログラミングには、書き方の好みが分かれる部分が多くあります。区別がないと、AIの指摘を全部「正しいこと」として受け取ってしまいます。

レビューを受けたら、AIが書き換えたコードをそのまま貼り替えるのではなく、指摘された理由を読んで、自分の手で直します。直したコードをもう一度貼って「これで改善されましたか」と聞くところまでが、1セットです。

また、複数の書き方を比べたいときは、「他にどんな書き方がありますか。それぞれの長所と短所も教えてください」と聞くと、自分のコードを別の角度から見る練習になります。ひとつの書き方しか知らないと、それが良いのか悪いのかも判断できないからです。

学習になる頼み方・ならない頼み方

ここまでの内容を、表にまとめます。迷ったときは、「この頼み方で、自分は何を考えるだろう」と自問してみてください。

場面学習になる頼み方学習にならない頼み方
エラーが出たエラー全文とコードを貼り、原因の説明を先に頼む「直して」とだけ頼んで、直ったコードを貼り替える
意味が分からない「1行ずつ何をしているか説明して」と頼み、自分の言葉で言い直す説明を読まずに、動けばよしとして先に進む
行き詰まったヒントを段階的に出してもらい、毎回自分で考える最初から答えのコードを求める
動いたあと改善点を理由つきで挙げてもらい、自分で直す「もっと良くして」と丸ごと書き換えさせる
書き方に迷う複数の書き方と、それぞれの長所・短所を聞く「一番いいのはどれ」とだけ聞いて鵜呑みにする
宿題・課題分からない概念を説明してもらい、自分で書く問題文を貼って、提出するコードを作らせる

最後の行は特に注意が必要です。AIの利用ルールは、学校や課題、職場によって異なります。丸ごと作らせたコードをそのまま提出すると、ルール違反になる場合があります。ルールが分からないときは、提出前に先生や担当者に確認してください。AIを参考にしたときは、そのことを明記するのが基本です。

なお、この記事の依頼文は、ChatGPT、Claude、Geminiなど、文章で質問できるAIであれば同じように使えます。使える範囲や機能は変わることがあるので、使う前に各公式サイトで確認してください。

学習になる頼み方に共通しているのは、AIの返事を受け取ったあとに、自分が考える時間が残ることです。逆に、学習にならない頼み方は、返事を貼り付けた時点で作業が終わってしまいます。

AIの説明を確かめる方法

AIの説明は、分かりやすくて自信ありげに書かれていても、間違っていることがあります。存在しない関数名を挙げたり、バージョンの違いを無視したり、原因を取り違えたりします。そのため、説明を受け取ったら、必ず自分で確かめる習慣をつけてください。確かめる作業自体が、学習になります。

実際に動かして確かめる

一番確実なのは、実際にコードを動かすことです。AIが「原因はここです」と言ったなら、次の順で試します。

  1. AIの説明どおりに直す前に、問題の箇所に print などで値を表示して、AIの言う状態になっているか見る
  2. 説明どおりに直して、エラーが消えるか確認する
  3. 直したあと、別の入力でも動くか、いくつか試す

たとえば、「空のリストだと要素数が0になる」という説明なら、print(len(numbers)) で本当に0と表示されるか見てみます。説明と実際の動きが合っていれば、納得して次に進めます。合っていなければ、AIの説明が間違っているか、自分が別の問題を抱えているということです。そのまま「表示された結果」をAIに貼って、聞き直してください。

公式ドキュメントで確かめる

AIが挙げた関数や書き方は、その言語の公式ドキュメントで確かめます。PythonならPython公式のドキュメント、JavaScriptやWebの書き方ならそれぞれの公式の解説が、一次情報にあたります。見るところは次の3点です。

公式ドキュメントは、最初は読みにくく感じるかもしれません。それでも、関数名で検索して、その関数の説明と使用例だけを読むところから始めれば十分です。AIに「この関数の公式ドキュメントで確認すべき点を教えて」と頼んで、読む場所の見当をつけてもらう使い方もあります。

AIが書いたコードを自分のプロジェクトに取り込むときの、より詳しい確認の観点はAIが書いたコードを取り込む前に確かめることにまとめています。

自分の言葉で言い直す

もうひとつの確かめ方は、説明を自分の言葉で言い直すことです。「つまり、〇〇だから△△になるんですね」と、AIに返してみてください。言い直せなければ、まだ分かっていません。言い直した内容が合っているか、AIに確認してもらうこともできます。この返し方は、友達に説明して理解を確かめるのと似ています。

学習の進め方と、作って公開する段階

ここまでの使い方を、学習の進み具合ごとに整理します。

段階AIの使い方自分でやること
はじめの頃エラー文とコードを貼り、原因の説明を頼む説明を読んで、自分の手で直す
慣れてきた頃動いたコードのレビューや、別の書き方の比較を頼む指摘の理由を読み、取り入れるかを自分で決める
自分で作る頃設計の相談や、読みにくい部分の説明を頼むAIの提案を疑い、動かして確かめる

どの段階でも共通するのは、最後の判断を自分でするということです。AIの提案は、あくまで「意見のひとつ」として扱います。

AIコーディング支援のサービスは種類が多く、使い方のタイプで向き不向きがあります。選ぶときの考え方はAIのコーディング支援の選び方|使い方のタイプで決めるで整理しているので、学習用に何か導入したくなったときに読んでみてください。

ある程度書けるようになったら、簡単なツールをひとつ作って公開してみるのも良い練習です。自分のコードが実際に動く形で世に出る経験は、教科書の演習だけでは得られません。公開・運用まわりをAIがサポートしてくれるサービスを使うと、その最初のハードルを下げられます。

公開する場合も、ここまでと同じ姿勢が大切です。AIが用意してくれた部分も、何をしているのか自分の言葉で説明できる状態にしておくと、あとから手直しするときに困りません。

まとめ

AIはプログラミング学習の心強い相棒ですが、代わりに考えてくれるわけではありません。軸は、答えのコードをもらうのではなく、説明してもらうことです。

次に書いているコードでエラーが出たら、まず上の依頼文をコピーして、角かっこの部分を差し替えて送ってみてください。その一往復を積み重ねることが、プログラミング力を伸ばす近道になります。プログラミングを学ぶ先の進路や仕事については、AI時代の進路と仕事はどうなる?で考え方を紹介しています。

プログラミング以外の学習場面でのAI活用も気になる人は、学生・教育現場のAI活用ガイド|学年・場面別の入口に、学年・場面別の記事をまとめています。

参考リンク

  • https://claude.ai/
  • https://openai.com/chatgpt/
  • https://gemini.google.com/