2

レイヤー/層を作成するたびに、あるレイヤーから別のレイヤーに変換する必要がありますが、それは密結合システムであることを意味しますか? ビジネス ロジックを変更したり、データベース内のフィールドを削除したりする場合、すべてのレイヤーをデータベース レイヤーからクライアント フロント エンドに変更する必要がありますか?

たとえば、「データ コントラクト」オブジェクトを公開し、それを中間層でいくつかの「ビジネス オブジェクト」に変換してから、データ層で適切な「ORM オブジェクト」に変換する Web サービス。そして、Web サービスを呼び出すクライアントは、datacontract をいくつかのモデル オブジェクトなどに変換します...

その間には非常に多くの変換が存在するため、Web サービスを疎結合するように設計するにはどうすればよいでしょうか? 誰かが彼/彼女の意見を共有できれば、それは素晴らしいことです。

ありがとう

4

1 に答える 1

3

変換またはマッピングは、疎結合に多少関連していますが、直交しています。

  • 具象型から具象型にマップする場合、マッピングは密結合です
  • 抽象型から具象型に、またはその逆にマップする場合、マッピングは疎結合です

つまり、疎結合は、マッピングではなく、インターフェースへのプログラミングの概念に関連しています。

アプリケーション内のレイヤーが具体的な型を介して相互に通信する場合、密結合されています。このような場合、階層化はあまり価値がなく、モノリシック アプリケーションを構築した方がよいでしょう。

一方、レイヤーがインターフェイスを介して他のレイヤーと通信する場合、レイヤーは疎結合になりますが、多くの場合、依然としてマッピングが必要です。

于 2010-01-08T12:32:09.743 に答える