Avatar
Avatar
omochimetaru
例にあげたような上流の関数の場合、仮に列挙されていたとしても、 結局のところログを出すかユーザにメッセージを出すか、ぐらいしかできることがなくて、 いくらかのパターンの場合にはリトライの選択肢がある、ぐらいになると思います。
上層のエラーをハンドリングする際に、下層のエラーの詳細に応じてハンドリングすることが誤りではないですか?それぞれの層に準じたセマンティクスがあるはずで、その層のセマンティクスではなく、下層のエラーに対してハンドリングをするのは、カプセル化された実装の中身が漏れ出しているのでは?
11:52 PM
ただ、理想的にはそうやってそれぞれの層におけるセマンティクスでエラーを型付けするのが正しいと思うけど、それにはコストがかかるので、現実的にはそのコストに見合うところでしかそれはできないだろうと考えています。