2012-01-20 13 views
4

ドメイン駆動型アプリケーションでは、ServiceResponse<>というタイプを使用してアプリケーションのレイヤ間でデータを送信します。具体的には、ドメイン内のすべてのメソッドによって返されます。現時点では、メソッドから返されたデータ(存在する場合)、または生成された可能性のあるエラーをカプセル化します。ドメインからのステータスの返却

私の質問は次のとおりです。アプリケーションの他のレイヤーで役立つ可能性のあるフィールドをこのオブジェクトに追加することは許容される方法ですか?たとえば、StatusまたはStatusCodeフィールドを追加して、後でHTTPステータスコード(マッピングの有無にかかわらず)としてサービスレイヤによって解釈される可能性がありますか?

答えて

1

私にとっては素晴らしい場所のようです。すべてのメソッドがある種の「応答」を返すという考えは、あまりにもデカップリングしようとするような匂いがしますが、このような極端なデカップリングが正当な場合があります。

いずれにしても、ServiceResponseは簡単にステータスを持つことができ、必要な場合はその場所に置くことができます。

+0

返信いただきありがとうございます。しかし、このステータスコードはおそらくサービスレイヤーのほとんど(もしそうでなければ)ではないでしょう。それは良いことです:ドメイン層がサービス層に特に対応するためですか? –

+1

いいえ、ドメイン層は、その層の上のどの層がメンバーであるかについて世界に気を付けるべきではありません。 'ServiceResponse <>'自体はサービス層の居住者でなければならず、サービスメソッドが返ってくるときに関連するドメインオブジェクトを含んでいます。ドメインオブジェクトは、他のドメインオブジェクトについて知っているメソッドしか持たないようにする必要があります。 – cdeszaq

+0

ありがとうございます! –

関連する問題