新規の開発でPHP5を使ってオブジェクト指向(?)で組みたいと思ってます。

例外処理を使ってみたいのですが、例外処理の仕組みは理解してるものの、
使った経験がないため「例外処理はこう使ったらよい」というノウハウがありましたら教えて下さい。

既存のreturn文の戻り値でエラーチェックするより、全部例外処理を使ったほうが楽なんでしょうか。
よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:2008/11/19 12:45:31
  • 終了:2008/11/26 12:50:02

回答(2件)

id:Mook No.1

Mook回答回数1312ベストアンサー獲得回数3912008/11/19 12:57:40

ポイント60pt

例外処理はオブジェクト指向とは直接関係ない話だと思いますが、

PHPではありませんが、下記のガイドラインが役に立つかともいます。

MSDN:例外処理の設計ガイド(要約)


基本的な考え方は

例外の適切な使用

コードが前提から外れた事態が起きた場合にのみ例外を使うべきである。
意図している機能のために例外を使うべきでない。

例:ログイン処理でユーザ名・パスワードが間違っていたとき
 予期される結果なので、例外を使うべきではない

例:ユーザ管理DBが利用できないとき
 予期しない結果なので、例外を使うべきである

例外は単純な結果を返す処理よりもコストがかかる。正常系のフローには返値で十分。例外を使いすぎるとコードの可読性も保守性も下がる。

だと思います。

id:xxmasaxx

これは分りやすいですね。スッキリしました。

回答有り難うございます。

2008/11/19 13:03:55
id:hijk05 No.2

hijk05回答回数1307ベストアンサー獲得回数232008/11/19 16:55:45

ポイント10pt

>既存のreturn文の戻り値でエラーチェックするより、全部例外処理を使ったほうが楽なんでしょうか。

エラーをシステムエラーとユーザーエラーに分ける。

・システムエラー系は全て例外を投げる形式の方がよい

・ユーザーエラー系は、処理が継続可能なエラーかどうかをみて、処理が継続不可能なエラーは全て例外を投げる形式の方が良い。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません