模型檢視控制器入門

模型 - 檢視 - 控制器(MVC)是軟體設計中的架構模式而不是設計模式 ,它描述了構建應用程式的方式以及該結構中每個部分的職責和互動。 [1]

從歷史上看,MVC 最初由 Trygve Reenskaug 於 1979 年描述為一種接近(桌面)GUI(圖形使用者介面)設計的方法。Reenskaug 描述了他早期的 Smalltalk 和麵向物件的概念性工作如下: [2]

“MVC 被認為是使用者控制大型複雜資料集問題的一般解決方案。最難的部分是為不同的架構元件找到好名字。模型 - 檢視 - 編輯器是第一套。經過長時間的討論,特別是對於 Adele Goldberg,我們以模型 - 檢視 - 控制器這兩個術語結束。“

MVC 在 Web 應用程式中的廣泛普及是由於它包含在兩個非常受歡迎的框架中:Struts 和 Ruby on Rails。這兩個環境標誌著後來建立的數百個框架的方式。 [3]

好處:

  1. 它非常受歡迎。
  2. 當與前端控制器模式結合使用時,它提供強大的路由。 (基於網路的 MVC)
  3. 它實現了關注點的分離。
  4. 它使協作變得更容易,因為不需要關注。
  5. 它可以更輕鬆地跟蹤複雜的應用程式的工作方式,從而減少貢獻者貢獻時的錯誤。

缺點:

  1. 抽象可能會使相對簡單的應用程式過於複雜化。
  2. 由於涉及許多概念,學習曲線可能很困難。
  3. 許多框架將自己描述為 MVC,但實現方式不同,因此一個開發人員將具有不同的習慣。