実技研修のおとも

座学が終わって、いざ書こうとしたら手が止まった——そのときに開く本です。

文法を覚え直す本ではありません。題材は倉庫ひとつだけ——倉庫の商品の出し入れをモチーフに、 各項目に書かれている処理を再現して、どのような処理がされているかを見ることができます。 変数も if も繰り返しも、この1つで確かめます。 コードの1行ずつには日本語が付いています。 Java のソースコードを貼れば、それにも1行ずつ日本語でステップ解説が付きます。

この本がしていること

画面のボタンを押すと、その場の Java のコードが書き替わります。 そのコードで、倉庫の商品の出し入れを7日分再現します(1日目から7日目。出ていく数は日ごとに違います)。 在庫が足りない日があれば、そこで倉庫が空になります。

下の2つは if (stock <= 5) を if (stock < 5) に変えただけ。 コンパイルエラーは1つも出ません。それでも7日間の結果はこう変わります。

if (stock <= 5) 7日間もった

1日目7日目

if (stock < 5) 3日目で空

1日目7日目

1回動かすだけでは、この違いは絶対に見つかりません。 現場で長く残るバグの多くが、この「エラーにならない間違い」です。

3つのページ

赤い英文が出たら、ここから引く

出た英文をそのまま打てます。NullPointerException・equals・for のように、 覚えている単語1つで構いません。文面を覚えていないときは、下の索引から押して引けます。

全部分かると、どうなるか

  1. 渡されたコードが読める

    初見の業務コードを開いて、「だいたいこんなことが書いてある」まで分かる。 分からない行があっても、どの項目を引けばいいかが分かる。

  2. エラーの原因の行を指せる

    スタックトレースを見て、自分が書いたファイルの何行目かを指せる。 英語のまま読めるようになる(日本語訳はいつでも開けます)。

  3. エラーにならない間違いに気づける

    コンパイルは通るのに動きがおかしい——現場で一番時間を取られるバグに、 自分で気づけるようになる。

ここまで来れば、業務のコードを前にして「右も左も分からない」状態ではなくなります。

サンプルで試す

仕掛け
今の仕掛けを Java で書くと
    虎の巻だけの登場人物(Warehouse・Store)

    代表的な使い方

      倉庫の様子

      在庫 —
      今日の出荷 —
      日 —

      実行中

      つまずきどころ

        動かして見る

        ここは読む専用の36項目です。虎の巻にある「サンプルで試す」は、この画面にはありません——倉庫で動かして確かめられるものは「虎の巻」にあります。

        代表的な使い方

          つまずきどころ

            Java のソースコードを貼って、日本語で解説

            .java の中身をそのまま貼り付けると、ステップ単位で日本語で解説します。

            貼ったコードはこの画面の中だけで処理されます。外部へは1バイトも送信しません(通信そのものをしません)。

            貼り付け欄で Ctrl+Enter(Mac は Cmd+Enter)を押しても読めます。