24

MVCと3層またはN層アーキテクチャでWebサイトを開発することの違いは何ですか?

どちらがいいですか?長所と短所は何ですか?

4

1 に答える 1

13

これらはほとんど同じですが、3層では、最上位(プレゼンテーション)が最下位層(データの永続性)と直接通信することはありません。

model-view-controllerでは、理論的には、モデルは、ビューが更新できるように変更されたことをビューに「通知」することになっています。ただし、ステートレスであるため、これは通常、ほとんどのWebアプリケーションでは問題になりません。よく知られているPHPMVCアーキテクチャに、モデルと直接通信するビューがあるかどうか、またはその逆かどうかはわかりませんが、そうでない場合は、実際には3層であると言うのが正しいでしょう。

ウィキペディアによると:

一見すると、3つの層はMVC(Model View Controller)の概念に似ているように見えるかもしれません。ただし、トポロジー的には異なります。3層アーキテクチャの基本的なルールは、クライアント層がデータ層と直接通信することは決してないということです。3層モデルでは、すべての通信がミドルウェア層を通過する必要があります。概念的には、3層アーキテクチャは線形です。ただし、MVCアーキテクチャは三角形です。ビューはコントローラーに更新を送信し、コントローラーはモデルを更新し、ビューはモデルから直接更新されます。

出典:ウィキペディア:多層アーキテクチャ

于 2010-05-16T10:31:57.140 に答える