Open4
Web APIのエラーレスポンス
エラー処理がオブジェクト指向設計を破綻させる
エラーの出力に関しては、エラーが発生した関数の中で出力するにしても、呼び出し側で出力するにしても、いずれにせよ、設計上の問題が生じます。エラー処理を組み込むと、上位側と下位側の結合が密になったり、暗黙の了解が含まれたりして、せっかくオブジェクト指向的に考えた設計が破綻することにもなりかねません。
実際のソフトウェア開発では、開発の最終段階になってからエラーの出力を組み込もうとして、オブジェクト指向的な設計の形を崩すことが多いようです。汎用性を犠牲にして、ある特定の利用形態で適切なログが出力されるようにエラー処理を組み込んだり、エラーメッセージの表示仕様に基づいて、返すエラー情報の内容を決めたりすることが良くあります。
http://www.aerith.net/design/error-log-j.html