私はここでいくつかの質問をし、例外処理についていくつかの記事を読んだが、いつ例外を処理してはいけないのか、本当にいつ把握しているとは思わない。私が読んだ記事では、「あなたが回復できる例外を処理するだけです」ということは、それが意味することは何ですか?例外を処理できない場合、私は何をしますか?それはスタックの上に伝播させますか?私がそれを処理しない場合、どのように私はそれを記録し、ユーザーフレンドリーなエラーメッセージを表示することができます。ほとんどの人はWebアプリケーションやWebサービスで何をしていますか?一例として、.netでの例外処理。
は、私は、SQL
私は下段に例外を処理するにはどうすればよいtry{
//do something with db
}catch(SqlException ex){
//what should i do here
//should i call code again to retry getting data from db
}catch(Exception ex){
//should i even catch exception of type exception
}
からデータを引き出し下段データ層を持っていると言いますか?例外をバブルアップさせるべきでしょうか?もしそうなら、私はsqlexception型の例外をキャッチしたいと思うなら、ライブラリsqlexceptionへの参照が必要ですが、確かにデータアクセスとは関係のない層でそのライブラリを参照する必要はありません。それは早朝にまだここにいるのですが、私はので、ここで、この同じ質問に苦しんできたので、
これらの他のトピックが役立つかもしれない:http://stackoverflow.com/questions/2765086/exception-handling-policy-in-libraries –
http://stackoverflow.com/questions/5772237/exception-handling- in-layered-architecture –