- - PR -
C# 戻り値の型を動的に変更することは可能ですか?
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-05-24 09:55
こんにちは。
>『.NET エンタープライズ Web アプリケーション開発技術大全 Vol.3 ASP.NET 応用編』 本屋で立ち読みしてきました(買う金がなかった。。がっくし;; さらりとしか読んでないので、内容については言及しませんが、南部さんの主張されていることが、大体書いてあったかと思います。 で、4章に「CLRのデザインルール」と書かれており、そのページの欄外にその元ネタになっているMSDN(だったかな?)のURLが載っていたかと思います。すみませんが、どなたかそのURLを教えてもらえないでしょうか?メモってこなかったんで。どのドキュメントか一度参照してみたいと思います。 | ||||
|
投稿日時: 2005-05-24 22:47
> そのURLを教えてもらえないでしょうか?
これですね。 例外処理の実施 .NET における例外管理 _________________ | ||||
|
投稿日時: 2005-05-25 04:33
南部です。 エラーに関しての業務的か否かの基準ですが、 「業務的か」、「想定範囲内か」という言葉自体に絶対的な基準はないです。 さらに、同じエラーでも処理のスコープによって変化するため、
のような解説になっていると考えました。 「上司から買い物を頼まれた」という簡単な日常での例で、 「売り切れだった」というエラーが発生した場合。 @上司から、「売り切れだった場合は、取り寄せてもらってくれ」などの 「売り切れ」に対する指示がなかった場合、部下にとってこのエラーは 「想定範囲外」として上司に「例外」として報告します。 勝手に「取り寄せてもらう」などの業務エラールートを作成してはいけません。 A上司から、「売り切れだった場合は、教えてくれ」という指示があった場合、 これは、業務エラーとして、「売り切れでした」という「戻り値」を返します。 きっと上司が業務エラールートを用意してくれているでしょう。 B上司から、「在庫を電話で確認してから、買ってきて」と言われた場合、 在庫は確認済みなのに「売り切れ」発生、、、「例外」をスロー!!します。 在庫確認での「売り切れ」は業務エラールートがあり、想定範囲内です。 (確認後、上司の指示を仰ぎます) でも、実際に買いに行った時に発生した「売り切れ」はこのスコープでは、 「例外」です。部下は「例外」報告するしかできません。 (クラスライブラリのデザインではこの実装が推奨されているはず、、) C上司から、「買ってきて」以外の指示がなかった場合、 「売り切れ」でしたが、この店は1日に数回入荷するので、 30分くらい待ってみることにしました。 品物が届くかもしれませんが、そうでない場合は「例外」を報告します。 (実際はAで上司に報告後、指示があったら待つでしょう) 業務エラールートの作成はアプリケーションによって異なりますし、 どの実装が適切かの判断はやはり人によりますね。 かなりこじつけで、、すみません。 たとえ、設計時にすべてのエラーが想定できたとしても、 「例外」として扱うところ、「業務エラー」として扱うところは それぞれの役割・責任範囲により適切に分類・実装を行う必要が あるという認識です。 |