今日からというかさっきから始めた超初心者で申し訳ないんですが・・・

流儀の問題なんですけど、エラー処理はtry catchで受けるものですか?
それとも自力でチェックするものなんでしょうか。

たとえば引数の未定義をチェックするのに
perlで言えばif( !defined($hoge)){ みたいにするよりも
catchで場合分けして受けるのが正解?