あなたは

エラーを治す作業を

どう行っていますか?

 

 

もしかして

眺めていれば

エラーの原因が

 

 

自分から現れてくれるという

致命的な勘違いをしてませんか?

 

 

 

原因が分かれば9割解決している

 

 

今回伝える方法を

あなたが修得すれ

 

 

あなたは

ほかの人が30分かけて見つけるエラーを

5分程度で見つけてしまいます

 

 

 

複雑なアルゴリズムの

中に潜んだエラーも

軽々と見つけられるようになります

 

 

 

まるで、あなたは

全くエラーの起きない

天才プログラマーの

ような印象を持たれます

 

 

プログラムの重要ポイントは

スピード × 信頼性

の2つです

 

 

このどちらが欠けると

致命的なプログラムになります

 

 

すごく安全なプログラムを

書いてくれるけど

納期は守れない

 

 

納期より早く完成させるけど

エラーだらけのプログラム

 

 

どちらも、そんな人に

依頼したくないですよね

 

 

あなたは

今回言う方法を実践し

早く、安全なプログラムを

作れるようになるべきです

 

 

これを身につければ

あなたは、スピードを落とすことなく

信頼性の高いプログラムを

作れるようになります

 

 

あなたの上司は

あなたへ依頼すれば

必ずちゃんとしたものを

作り上げてくれる

 

 

そう思い始めます

 

 

自然と、OJTの

経験が豊富になり

実践力がつきます

 

エラーを可視化する

 

エラーの原因が見えない時

『プリント・インターセプト』

を使ってください

 

これは、出力を使って

システムの状況を見る方法です

 

 

Javaを使用している場合は

「System.out.println()」

で出力するといいです

 

 

出力させるものは

1や2などの数字でも

なんでも構いません

 

 

私は、ふざけて

Hello! などの文字列を

出力させますが・・・

 

 

これをプログラム内に

設置することで

どの場所を通ったのかが

明確になります

 

 

System.out.println(1)

System.out.println(2)

System.out.println(3)

 

とそれぞれ変えることで

どこを通って、どこを通ってないか

わかりやすくなります

 

これで

エラーの原因が

見つかる可能性が

2倍近くに高まります

 

 

ひとつ気をつける

ポイントがあります

 

 

System.out.print()

ではなく

System.out.println()

を使うようにしてください

 

 

これは、改行が行われることで

一目で変な挙動をしているのを

判別できるためです

 

 

今回は

エラーの原因を特定する

方法をお伝えしました

 

 

エラーをどう見つけるか

 

ブログを読み終わったあなたへ

 

↓のコードにはエラーが潜んでいます

 

int a = 2;int x;switch(a){case 1:x = 1;case 2:x = 2;default:x = 3;}System.out.println(x);

 

最後、出力は「3」になります

この原因を今回伝えた方法で

特定してみてください

 

 

模範解答みたいなものを

↓に用意してあります。

 

 

 

 

 

 

 

 

 

 

int a = 2;int x;switch(a){case 1:x = 1;System.out.println("case1");case 2:x = 2;System.out.println("case2");default:x = 3;System.out.println("default");}System.out.println(x);

 

 

こうすると出力は

case2

default

3

 

となりますね。

今回はbreakが無いのが

エラーの原因ですね

 

 

エラーにすぐ気づけることで

「無駄に時間を殺す」ことがなくなります

 

人間なら誰でもエラーを発生させます

どれだけ早く、正確に修正できるかが

他の人との違いになります