mvc 職能劃分 MVC的劃分原則

2021-10-13 01:21:05 字數 1147 閱讀 2396

mvc的劃分原則

對於mvc中三者的劃分並沒有十分明晰的定義和界線,只是一種指導思想,讓你按照model,view,controller三個方面來描述你的應用,並通過這三者的的互動,使應用功能得以正常運轉。

其中,view的部分比較明確,就是負責顯示。一切與顯示介面無關的東西,都不應該出現在view裡面。因此,biew中一般不會出現複雜的判斷語句,不會出現複雜的運算過程。對於php的web應用而言,毫無疑問,html是view中的主要內容。如下是關於view的幾個原則:

1、負責顯示介面,以html為主;

2、一般沒有複雜的判斷語句或運算過程,可以有簡單的迴圈語句、格式化語句。比如,部落格首頁的文字列表就是一種迴圈;

3、從不呼叫model的寫方法。也就是說,view只從model中獲取資料,而從不改寫model,所以我們說他們是老死不相往來的。

4、一般沒有任何準備資料處理的內容,如查詢資料庫等。這些一般是放在controller裡面,並以變數的形式傳給檢視。也就是說,檢視裡面要用到的資料,就是乙個變數。

對於model而言,最主要就是儲存事物的資訊,保證事物的行為和對他可以進行操作。比如,post類必然有乙個用於儲存部落格文章標題的title屬性,必然有乙個刪除的操作,這都是model的內容。以下是關於model的幾個原則「

1、資料、行為、方法是model的主要內容;

2、實際工作中,model是mvc中**量最大,邏輯最複雜的地方,因為關於應用的業務邏輯也要在這裡表示;

3、注意與controller區分開。model是處理業務方面的邏輯,controller只是簡單的協調model和view之間的關係。只要是與業務有關的,就該放在model裡面。好的設計,應該是胖model,瘦controller;

對於controller,主要是響應使用者請求,決定使用什麼檢視,需要準備什麼資料用來顯示。以下是有關controller的設計原則:

1、用於處理使用者請求,因此,對於request的訪問**應該放在controller裡面,比如$_get,$_post等。但許可權於獲取使用者請求資料,不應該對資料有任何操作或預處理,這應該放在model裡面。

2、呼叫model類的方法,對model進行寫操作。

3、呼叫檢視渲染函式,形成對使用者request的response。

4、一般不要有html**等其他表現層的東西,這應該是屬於view的內容。

mvc 職能劃分 MVC架構的職責劃分原則

最近負責乙個專案,用了 但是隨著對業務邏輯理解的深入,才開始意識到問題的嚴重。我錯誤地理解了 mvc 中的 controller,想當然地根據以往的經驗,把所有的業務邏輯都放在 controller 的 action 中去實現。於是,每乙個 controller 的 都上千行,越來越臃腫。最後,我下...

MVC架構的職責劃分原則

mvc設計原則 模型 檢視 控制器 mvc 是一種設計框架 設計模式 mvc 的目標是將業務邏輯從使用者介面的考慮中分離。這樣,開發者就可以更容易地改變每一部分而不會影響其他。在 mvc 中 model 代表資料和業務規則 view 包含了使用者介面元素,例如文字,表單等 controller 則管...

MVC架構的職責劃分

模型 檢視 控制器 mvc 是一種設計框架 設計模式 mvc 的目標是將業務邏輯從使用者介面的考慮中分離。這樣,開發者就可以更容易地改變每一部分而不會影響其他。在 mvc 中,view 可能由 jsp 實現 controller 是乙個 servlet,現在一般用 struts 實現 model 則...