ホームページ >よくある問題 >3 層アーキテクチャと MVC の違いは何ですか?

3 層アーキテクチャと MVC の違いは何ですか?

清浅
清浅オリジナル
2019-03-11 10:26:5811248ブラウズ

3 層アーキテクチャと MVC アーキテクチャの違いは、3 層アーキテクチャのアーキテクチャが線形であるのに対し、MVC は三角形であり、階層的には 3 層の各層がネットワークから分離されており、 MVC の各層はネットワークから分離されていますが、これらは関連しています。3 層はアーキテクチャ スタイル、MVC はアーキテクチャ デザイン パターンです。

3 層アーキテクチャの概念は、MVC の概念に似ています。次の記事では、この 2 つの違いについて詳しく紹介します。これは一定の参考価値があり、皆様の参考になれば幸いです。

3 層アーキテクチャと MVC の違いは何ですか?

#【おすすめコース: #MVC チュートリアル #】

3 層アーキテクチャと MVC アーキテクチャの違い

(1) トポロジ

3 層アーキテクチャの基本的なルールは次のとおりです。クライアントが 3 番目の層に直接接続することはありません。3 層モデルでは、すべての通信が中間層を経由する必要があります。つまり、そのアーキテクチャは線形ですが、MVC アーキテクチャでは三角形であり、ビューがコマンドをコントローラーに中継し、コントローラーがモデルを更新します。 、ビューはモデルから直接更新されます

3 層アーキテクチャと MVC の違いは何ですか?

(2) 階層的側面

各アプリケーションには 1 つ以上の階層があります。プレゼンテーション層、ビジネス ロジック層、およびデータ アクセス層


3 層モデルでは、通常、各層がネットワークから分離され、プレゼンテーション層は何らかのサーバー上に配置され、その後、サーバーと通信します。ネットワーク上のバックエンド アプリケーション サーバーがネットワーク上のデータベース サーバーと通信します。

MVC は、ロジックのさまざまな部分がアプリケーション内のモデル、ビュー、およびコントローラーの表示を担当するプログラミング設計パターンです。たとえば、モデル層には DB を呼び出してデータを保存および取得する内部実装がある場合があるため、これらのことは関連しています。コントローラーは Web サーバー上に常駐し、リモートからアプリ サーバーを呼び出してデータを取得できます。

3 層アーキテクチャと MVC の違いは何ですか?

(3) 通信の側面


3 層での通信: 3 層は物理的な構造のみを指します。 MVC 設計パターンは通常 3 層モデルを使用して実装されるため、これらは混乱を招く場合があります。

MVC での通信: MVC 結合重みでは、一方向通信では各層が左側の層によって変更され、それに応じて右側の層が左右に更新されると言えます。 。

(4) 使用上の側面

大規模なアプリケーションでは、MVC は N 層アーキテクチャのプレゼンテーション層になります。モデル、ビュー、およびコントローラーは、データ レイヤーからのデータをモデルに設定するためにのみ使用されます。 MVC は、コントローラーがビジネス ロジック、モデルがデータ アクセス層となる、ビュー プレゼンテーション用の完全な 3 層アーキテクチャとしても使用できます。 3 つのレイヤーはアーキテクチャ スタイルであり、MVC はアーキテクチャ デザイン パターンであり、これらの間に違いが生じます。ただし、MVC デザイン パターンを 3 層モデルで使用できます。

要約: 以上がこの記事の全内容です。皆様のお役に立てれば幸いです。

以上が3 層アーキテクチャと MVC の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。