Home >> Blog >> MVC 架構簡介

你需要知道的關於 MVC 架構的一切

MVC被稱為架構模式,它體現了模型、視圖和控制器三部分,或者更準確地說,它將應用程式劃分為三個邏輯部分:模型部分、視圖和控制器。它用於桌面圖形用戶界面,但現在用於設計移動應用程式和 Web 應用程式。

歷史

Trygve Reenskaug 發明了 MVC。第一份報告是在 1978/79 年訪問施樂帕洛阿爾托研究實驗室 (PARC) 的一位科學家時撰寫的。起初,MVC 被稱為“Thing Model View Editor”,但很快就變成了“Model View Controller”。

Tygrve 的目標是解決用戶控制龐大而復雜的數據集的問題。多年來,此架構的實踐發生了變化。由於此模式是在 Web 瀏覽器之前發明的,因此最初被用作圖形用戶界面 (GUI) 的架構模式。

你需要知道的關於 MVC 架構的一切

目前 MVC 用於設計 Web 應用程式。一些使用相關概念的 Web 框架:Ruby on Rails、Laravel、Zend 框架、CherryPy、Symphony 等

MVC 架構

MVC 是一種架構模式,這意味著它統治著應用程式的整個架構。儘管它通常被稱為設計模式,但如果我們僅將其稱為設計模式可能是錯誤的,因為設計模式用於解決特定的技術問題,而架構模式用於解決架構問題,因此它會影響整個我們應用程式的架構。

它具有三個主要組件:

  • Model
  • View
  • Controller

每個組件都有特定的職責

你需要知道的關於 MVC 架構的一切

使用 MVC 的主要原因是:首先,它不允許我們重複自己,其次,它有助於為我們的 Web 應用程式創建一個堅實的結構。

MVC的優點

  • MVC 架構將用戶界面與業務邏輯和業務邏輯分開
  • 組件是可重用的。
  • 易於維護。
  • MVC 中應用程式的不同組件可以獨立部署和維護。
  • 這種架構有助於獨立測試組件。

MVC的缺點

  • 複雜性很高。
  • 不適合小型應用。
  • 數據訪問效率低下。

控制器 (MVC)是一種架構模式,它將應用程式分為三個主要邏輯組件:模型、視圖和控制器。這些組件中的每一個都是為處理應用程式的特定開發方面而構建的。MVC 是最常用的行業標準 Web 開發框架之一,用於創建可擴展和可擴展的項目。

MVC 組件

以下是 MVC 的組件 -

何謂網站連結,了解URL意思

MODEL-模型

模型組件對應於用戶使用的所有數據相關邏輯。這可以表示在 View 和 Controller 組件之間傳輸的數據或任何其他與業務邏輯相關的數據。例如,客戶對象將從資料庫中檢索客戶信息,對其進行操作並將其數據更新回資料庫或使用它來呈現數據。

VIEW-看法

View 組件用於應用程式的所有 UI 邏輯。例如,客戶視圖將包括最終用戶與之交互的所有 UI 組件,例如文本框、下拉列表等。

Controller-控制器

控制器充當模型和視圖組件之間的接口,以處理所有業務邏輯和傳入請求,使用模型組件操作數據並與視圖交互以呈現最終輸出。例如,客戶控制器將處理來自客戶視圖的所有交互和輸入,並使用客戶模型更新資料庫。相同的控制器將用於查看客戶數據。

ASP.NET MVC

ASP.NET 支持三種主要的開發模型:Web Pages、Web Forms 和 MVC(Model View Controller)。ASP.NET MVC 框架是一個輕量級、高度可測試的表示框架,它與現有的 ASP.NET 功能(如母版頁、身份驗證等)集成在一起。在 .NET 中,此框架在 System.Web.Mvc 程式集中定義。MVC 框架的最新版本是 5.0。我們使用 Visual Studio 創建可以作為模板添加到 Visual Studio 中的 ASP.NET MVC 應用程式。

ASP.NET MVC 功能

ASP.NET MVC 提供以下功能 -

  • 非常適合開發複雜但輕量級的應用程式給類似SEO優化服務使用。
  • 提供可擴展和可插拔的框架,可輕鬆替換和定制。例如,如果您不想使用內置的 Razor 或 ASPX 視圖引擎,那麼您可以使用任何其他第三方視圖引擎,甚至可以自定義現有的。
  • 通過將應用程式邏輯劃分為模型、視圖和控制器組件來利用應用程式的基於組件的設計。這使開發人員能夠管理大型項目的複雜性並處理單個組件。
  • MVC 結構增強了應用程式的測試驅動開發和可測試性,因為所有組件都可以基於接口設計並使用模擬對象進行測試。因此,ASP.NET MVC 框架非常適合擁有大型 Web 開發團隊的項目。
  • 支持所有現有的大量 ASP.NET 功能,例如授權和身份驗證、母版頁、數據綁定、用戶控件、成員資格、ASP.NET 路由等。
  • 不使用視圖狀態的概念(存在於 ASP.NET 中)。這有助於構建輕量級的應用程式,並為開發人員提供完全控制權。

因此,您可以將 MVC 框架視為構建在 ASP.NET 之上的主要框架,它提供了大量專注於基於組件的開發和測試的附加功能。

alpha

camp

alpha

camp

html

html

html

javascript

javascript

javascript