【勉強法】職業訓練でJavaを学ぶ40代が、Claude Codeを"専属の家庭教師"にしてる話

6月から職業訓練に通い始め、いま Java を勉強しています。(Javaは、アプリやWebサービスを作るのによく使われるプログラミング言語のひとつ)
40代・未経験・オンライン訓練。1日6コマで、授業のスピードはかなり速いです。
完全な独学だったら置いていかれていたと思いますが、Claude Code を家庭教師のように使うことでなんとかなっています。
このサイトでもおなじみ、私がアプリ作りに使っているAIです。これが Java学習の“専属家庭教師”として非常に優秀なので、この記事ではその使い方を具体的に紹介します。
そもそもClaude Codeって?
簡単におさらいします。
Claude Codeって何? AIの「Claude」を、パソコンのコード作業で使えるようにしたツール。普段はアプリ開発に使いますが、「指定したフォルダの中身を全部見て、それについて会話できる」のが大きな特徴です。
ポイントは、この 「フォルダの中身を丸ごと見てくれる」 ところです。これがJava学習に非常に効きます。
授業のコードを“丸ごと見せて”質問できる
私は、訓練で書いたJavaのコードを すべて1つのフォルダにまとめています。
そして、そのフォルダの中でClaude Codeを動かしています。
こうすると、今まで授業で書いたコードを、Claude Codeが全部把握している状態になります。
だから、質問が雑でも通じます。
- 「この前書いたこのコード、ここ何やってるんだっけ?」
- 「さっきの授業のここ、いまいち分かってない」
こう投げると、実際の自分のコードを見ながら説明してくれます。 教科書の一般論ではなく、「あなたが書いたこのコードはこういう意味です」という答えが返ってくるので、格段に腑に落ちます。
人間の先生に同じことを頼むと、「どのコードのことですか?」と画面共有の準備から始めることになります。その手間がまるごとありません。コードが全部見えているぶん、説明も的確です。
練習問題を出してもらって、自分で解いて、添削までしてもらう
「練習問題を作って」と頼むと、習った範囲に合わせて問題を出してくれます。
出してもらった問題は 自分で解きます。(AIに解かせない。ここは大事なので、あとでもう一度触れます)
実際に出してもらったのは、「キーボードから2教科の点数を入力させて、平均を出して、60点以上なら合格と表示する」という問題です。習いたての 「入力・計算・条件分岐」がちょうど全部入っている、いい塩梅の問題でした。
市販の問題集は、自分の進度とズレていることが多いです。難しすぎたり、簡単すぎたり。これは 今日習ったところピンポイントで、自分専用のドリルがいくらでも作れます。
私が自分で書いた答えがこちらです。
import java.util.Scanner;
public class Average1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("国語の点数を入れてください:");
int kokugo = scanner.nextInt();
System.out.print("数学の点数を入れてください:");
int suugaku = scanner.nextInt();
int average = (kokugo + suugaku) / 2;
String message;
if (average >= 60) {
message = "合格";
} else {
message = "不合格";
}
System.out.println("平均点は" + average + "点です");
System.out.println(message);
scanner.close();
}
}
一見、問題なく動きます。平均も出ますし、合否も判定されます。
ただ、これをClaude Codeに見せたところ、やんわり指摘が入りました。
平均を
int(整数)で計算してるので、小数点以下が切り捨てられますよ。間違いではないけど、もし小数点まで出したいなら別の書き方が…
(kokugo + suugaku) / 2 の部分です。整数どうしで割っているため、たとえば70点と85点なら、本当は77.5点なのに 77点に切り捨てられます。(プログラミング初心者によくあるミスだそうです)
「間違いではない。でも、こういう意図ならこう書くともっといい」と、答えを否定せずに一段上の書き方を教えてくれる。まさに家庭教師の添削です。
市販の問題集には「解答例」が載っているだけで、自分が書いたコードの“クセ”までは添削してくれません。そこを拾ってくれるのがありがたい点です。
脱線した疑問にも、ちゃんと付き合ってくれる
これはAIならではだと思いますが、授業と関係ない脱線質問にも答えてくれます。
たとえば私には、ずっと気になっていたことがありました。
「JavaとJavaScriptって名前似てるけど、何が違うの?兄弟なの?」
授業中にこの質問をするのは、先生にも他の受講生にも気が引けます。Claude Codeなら気兼ねなく聞けます。(ちなみに、名前は似ていますが ほぼ別物とのこと。兄弟というより他人の空似に近いそうです)
こういう「気になるけど、わざわざ聞くほどでもない」疑問をその場で解消できると、興味が途切れません。 結果として、勉強が続きます。地味ですが大事な点だと思っています。
大事なこと:それでも「まず自分で考える」
ここは、はっきり書いておきます。
訓練校のスタンスは、「生成AIを使うのはOK。でも、まずは自分で考えてね」 です。
私もこれには完全に同意していて、実際そうしています。
最初からAIに答えを出してもらうと、自分は何も成長しません。 家計簿アプリを作ったときは「動けばOK」でしたが、勉強は「自分が分かるようになる」のが目的です。ゴールがそもそも違います。
なので、課題はまず自分で考える。詰まって、悩んで、それでも分からない・気になるところを Claude Codeに聞く。この順番だけは守っています。
AIは「答えを丸ごとくれる人」ではなく、**「いつでも聞ける先輩」**くらいの距離感がちょうどいいと思っています。
正直、本領発揮はこれから
とはいえ、まだ訓練が始まって間もないため、ガッツリ詰まる場面は実はまだ来ていません。いまは基礎の基礎をやっている段階です。
これからオブジェクト指向など、未経験には鬼門と言われる概念が出てくるはずです。Claude Codeが本当に活きるのは、おそらくそこからだと思っています。
もうひとつ楽しみにしているのが、授業を受けながらリアルタイムで質問する使い方です。Zoomの授業中に「ここが分からない」と思った瞬間、隣でClaude Codeに聞ける。先生の話を止めずに、自分のペースで理解の穴を埋められるのは、かなり画期的だと思います。
こんな人におすすめ
- プログラミングを独学していて、質問できる相手がいない人
- 職業訓練やスクールで、授業のスピードについていけるか不安な人
- 「こんな初歩的なこと聞いていいのかな」と、質問をためらってしまう人
- 自分の進度にぴったり合った練習問題がほしい人
逆に、「ラクして課題を片付けたい」目的だと、おそらく身につきません。AIはあくまで補助輪で、漕ぐのは自分です。
まとめ
職業訓練でJavaを学ぶ40代が、Claude Codeを“専属の家庭教師”にしている話でした。
- 自分のコードを全部見せて質問できるので、説明が的確
- 練習問題を出してくれて、自分で解いたコードを 添削までしてくれる
- 脱線した疑問にも付き合ってくれるので、興味が途切れない
- ただし まずは自分で考える。AIは「いつでも聞ける先輩」くらいがちょうどいい
未経験の学び直しは、孤独で不安も多いものです。それでも、24時間いつでも聞ける相手がいるだけで、だいぶ心強くなります。
このサイトでは、プログラミング未経験の40代が職業訓練でどこまで成長できるかを、引き続き記録していきます。Java学習で進展があれば、また書きます。
なお、この勉強を始める前の**環境構築(MacにJavaの開発環境を入れる作業)**では、Mac特有の罠にしっかりハマりました。授業がWindows前提のため、Macだと苦労する箇所が多いです。その話は別の記事にまとめています。