1. 程式人生 > >MVC和MTV設計模式

MVC和MTV設計模式

1.MVC

MVC最初是由施樂公司旗下的帕羅奧多研究中心中的一位研究人員給 smalltalk語言發明的一中軟體設計模式。

MVC概述:MVC全名是ModelViewController,是模型(model)-檢視(view)-控制器(controller)的縮寫,一種軟體設計典範,用一種業務邏輯、資料、介面顯示分離的方法組織程式碼,將業務邏輯聚集到一個部件裡面,在改進和個性化定製介面及使用者互動的同時,不需要重新編寫業務邏輯。MVC被獨特的發展起來用於對映傳統的輸入、處理和輸出功能在一個邏輯的圖形化使用者介面的結構中。

MVC的產生理念: 分工。讓專門的人去做專門的事。

MVC的核心思想: 解耦

Model(模型) 是應用程式中用於處理應用程式資料邏輯的部分。
通常模型物件負責在資料庫中存取資料。 View(檢視) 是應用程式中處理資料顯示的部分。
通常檢視是依據模型資料建立的。 Controller(控制器) 是應用程式中處理使用者互動的部分。
通常控制器負責從檢視讀取資料,控制使用者輸入,並向模型傳送資料。  

2.MTV

MTV概述:本質上與MVC模式沒有什麼差別,也是各元件之間為了保持鬆耦合關係,只是定義上有些許不同。

Model(模型)

負責業務物件與資料庫的物件(ORM)

Template(模版)

負責如何把頁面展示給使用者

View(檢視)

負責業務邏輯,並在適當的時候呼叫Model和Template、

注意:Django還有一個url分發器,它的作用是將一個個URL的頁面請求分發給不同的view處理,view再呼叫相應的Model和Template。

圖解