web-dev-qa-db-ja.com

REST apiはDDDのプレゼンテーション層と見なされますか?

私はこの懸念について多くの質問を読みました、そしてそれらのいくつかは

DDDのプレゼンテーションVSアプリケーションレイヤー

アプリケーション層vsドメイン層?

したがって、私の質問は、トップレイヤーがREST APIであり、UIの必要がない場合、REST apiはプレゼンテーションレイヤーまたはアプリケーションレイヤーと見なされますか?

更新

この質問がDDDとは何の関係もなく、DDDなどにプレゼンテーションレイヤーがなく、OSIなどのアプリケーションレイヤーを混乱させないというコメントを受け取ったので、これを追加することにしました。

このスコープを実際に処理する分散インターフェイスレイヤーもあるようです。

したがって、基本的にプレゼンテーション層はDDDアーキテクチャの一部であり、このアーキテクチャの中心ではありません。また、.net web api(rest)の形式のWebサービスは、この分散インターフェースレイヤーに存在します。

enter image description here

7
Dario Granich

RESTは、HTTPの上にを置くプロトコルおよび規則です。これは、アプリケーション層でもプレゼンテーション層でもありません。 OSIモデル の一部とは見なされません。

HTTPは アプリケーションレイヤーと見なされます。

DDDのアプリケーション層 をOSIモデルのアプリケーション層と混同しないでください。それらは同じものではありません。 DDDにはプレゼンテーション層がないようです 実際には。

「抽象化の層」はまさにそれです。抽象化のレイヤー。コードを配置し、APIプロトコルを確立する場所です。あなたの抽象化は私のものとは異なる場合があります。 「すべてを支配する1つのリング」も「1つの真の方法」もありません。

4
Robert Harvey

OSIモデル ? REST apiは、アプリケーションレイヤー(レイヤー7)と通信するユーザーアプリケーションで実行されています。

RESTでは、APIの主な役割はハイパーメディアデータ転送です。つまり、ドメインの概念をハイパーメディア表現との間で変換します。これはおそらく、プレゼンテーションの問題ではなく、アプリケーションの問題として最もよく説明されています。

別の言い方をすると、クライアントに送信するメッセージは、application状態の表現です。したがって、「アプリケーション」層からその表現を送信しているというかなり説得力のある主張をすることができると思います。

0
VoiceOfUnreason