1. 程式人生 > >【設計模式】MVC模式與三層架構關係

【設計模式】MVC模式與三層架構關係

前言

對於許多新手都不明白MVC模式三層架構的關係,本人也是,特地整合了網上的一些文章對MVC模式和三層架構的關係進行介紹,希望對大家有幫助。

關於三層架構

在軟體體系架構設計中,分層式結構是最常見,也是最重要的一種結構。微軟推薦的分層式結構一般分為三層,從下至上分別為:資料訪問層、業務邏輯層(又或稱為領域層)、表示層。

  1. 表示層(UI):通俗講就是展現給使用者的介面,即使用者在使用一個系統的時候他的所見所得。
  2. 業務邏輯層(BLL):針對具體問題的操作,也可以說是對資料層的操作,對資料業務邏輯處理。
  3. 資料訪問層(DAL):該層所做事務直接操作資料庫,針對資料的增添、刪除、修改、查詢等。 在這裡插入圖片描述

關於MVC模式

模型-檢視-控制器(MVC模式) 是一種非常經典的軟體架構模式,在UI框架和UI設計思路中扮演著非常重要的角色。從設計模式的角度來看,MVC模式是一種複合模式,它將多個設計模式在一種解決方案中結合起來,用來解決許多設計問題。MVC模式把使用者介面互動分拆到不同的三種角色中,使應用程式被分成三個核心部件:Model(模型)、View(檢視)、Control(控制器)。它們各自處理自己的任務:

  1. 模型:模型持有所有的資料、狀態和程式邏輯。模型獨立於檢視和控制器。
  2. 檢視:用來呈現模型。檢視通常直接從模型中取得它需要顯示的狀態與資料。對於相同的資訊可以有多個不同的顯示形式或檢視。
  3. 控制器:位於檢視和模型中間,負責接受使用者的輸入,將輸入進行解析並反饋給模型,通常一個檢視具有一個控制器。 在這裡插入圖片描述

兩者關係

MVC是 Model-View-Controller,嚴格說這三個加起來以後才是三層架構中的UI層,也就是說,MVC把三層架構中的UI層再度進行了分化,分成了控制器、檢視、實體三個部分,控制器完成頁面邏輯,通過實體來與介面層完成通話;而C層直接與三層中的BLL進行對話。MVC可以是三層中的一個表現層框架,屬於表現層。三層和MVC可以共存。 在這裡插入圖片描述 在這裡插入圖片描述