第40回 例外処理とはそもそもなんぞや

例外処理。
ああ、プログラミングの70%は例外を処理するために書いているのではないか、
そんな気にもなったりするときがあるビンゴ中西です。


例外処理。例外処理とはそもそもなんなんでしょうね〜。
やってますか? 例外処理?
実装してますか? 例外処理?

例外処理

例外処理とは、なにか予期しないことに対処することです。
予期しないことが例外です。

プログラムからファイルをopenするといったときなんてことを考えてみましょう。
もしかしたら、openしたいファイルがないかもしれません。
openしたファイルの内容を使って処理を進めていく処理なら、
openした行より下の処理はハチャメチャになってしまいます。
ですから、Perlプログラマは、

pen my $f, '<', 'hoge.txt' or die 'ファイルが開けないっす';

と die を使って、ファイルを開けなかったときにプログラムを停止できるようにします。


hoge.txtがないところや、
hoge.txtがあっても権限がなかった場合は、
上記のプログラムを実行すると、

ファイルが開けないっす at bingo.pl line 1.

と表示され、処理がとまります。


こういった予期しないことが、起こったときにどう対処(処理)するのか?
それが例外処理です。

おっと、例外に対処したんだから、もうそれって予期しないことではないんじゃない?
もう対処したってことは、予期してるよね。となりますが、まあ、こういったものを例外処理と呼びます。


それでは また〜