-1

サービス層は外層か?そうでない場合、それはどのレイヤーの下にありますか?

返信してください

ありがとう

4

1 に答える 1

2

システムはさまざまな方法で編成できます。階層化されたアーキテクチャは 1 つだけではありません。「外側」レイヤーという用語を使用したことはありません。論理アーキテクチャ、物理アーキテクチャなど、複数の方法で同じシステムを分析することも合理的です。

議論中のアーキテクチャで選択したレイヤーがわかっている場合にのみ、質問に答えることができます。そうすれば、サービスがどこにあるかを理解できるはずです。あなたは「外側」についてのみ私たちに話してくれました。

私は通常、プレゼンテーション、ビジネスロジック、永続性について考えています。その場合、サービスはビジネス ロジック層にあります。

サービスをシステムのパブリック インターフェースと見なすことは非常に合理的であり、ある意味でそれらは「外側の」層にあると言えます。

コメントに応じて追加:

これに対する簡単な答えはありません。それはすべて、「サービス」が何を意味するか、およびレイヤーが何をしているかに依存します。具体的な例を見てみましょう。UI で請求書の詳細を表示したいとします。サービスの作成を選択する場合があります

InvoiceDto getInvoiceDetails(int invoiceNumber)

このサービスの実装がビジネス ロジック層にあることは明らかです。また、インターフェイスは、レイヤー間の通信方法に応じて、単純なライブラリまたは Web サービスになる場合があります。

次に、そのサービスを顧客に公開して、顧客のアプリがインターネット経由でサービスを呼び出せるようにすることにしました。おそらくRESTサービスを公開するコードがWeb層にあるでしょう

http://dave.org/service/invoice/nnnn

明らかに、Web レイヤーで実行されているアダプター コードが少しあり、そこで認証などを管理できます。しかし、サービスはどこにあるのでしょうか。そのアダプターだけですか?それはビジネスロジックですか?両方ですか?

私の考えでは、実際のサービスはビジネス層で実行されるロジックであり、残りは単なる配管です。

于 2009-12-03T08:02:51.427 に答える