MVC簡單認識

2021-06-27 02:40:42 字數 1669 閱讀 3080

學習乙個新知識,首先要了解的就是下面幾個問題,它是什麼?它能幹什麼?使用它有什麼好處?這篇文章就圍繞這幾個問題來展開討論。

mvc不是一種程式語言,嚴格來說,它都不算是一門技術,它是開發軟體時使用的一種「架構(框架)」。他就像是一種開發模式,或者是乙個程式設計模板。

軟體開發人員老生常談的乙個問題,就是軟體開發過程中的變化,需求會變,技術會變,客戶會變,老闆會變,更痛苦的是pm也會變,開發過程中沒有什麼是固定不變的,改變會給軟體開發帶來非常大的變故,這些我們都無法改變,我們唯一能做的就是盡可能的減少變化帶來的損失,mvc就是其中的一種解決方案。

mvc,model view controller,它是模型,檢視,控制器的縮寫,是將介面顯示,業務邏輯和資料分離的一種模型,這樣我們就可以在不更改邏輯的基礎上修改介面顯示。降低了介面和邏輯功能之間的耦合性,增加了**復用性。

model層,也叫模型層,主要負責和資料互動的任務。模型層主要功能有定義資料結構,從資料庫讀、取資料,資料格式驗證,讀資料進行加工處理。model層類似與三層架構中的dal 層,主要與資料庫進行互動,並且進行簡單的資料處理。

view層,即檢視層,負責所有介面層的任務,其實就是寫入資料和顯示資料。主要功能有獲得資料,顯示資料,決定介面技術(html,xml,flash等),介面排版;向controller返回資料,決定資料傳送方式,資料驗證。view層類似於三層中的ui層,主要是和使用者進行資料互動的。

controller層,集控制層,接受使用者輸入的資料,呼叫模型和檢視完成使用者的需求。當使用者單擊超連結或者傳送html表單時,控制器其實不做任何的處理和輸出,它只是根據實際情況決定呼叫哪個模型或者檢視去處理這個請求,然後決定使用哪個檢視來顯示返回的處理結果。controller層和三層中的bll層不一樣,因為它沒有資料處理或者是邏輯處理功能,它只是控制呼叫其他元件來完成需求。

看乙個簡單的頁面顯示示例:

首先,頁面響應使用者的事件,然後向controller傳送使用者需求,controller根據使用者需求呼叫model元件,model元件完成資料操作,然後返回到controller,controller根據需求,選取對應view,將結果顯示到介面。

可以看到,controller將介面顯示和資料處理完全的分隔開了,降低了它們之間的耦合,開發人員可以根據使用者需求任意更改介面顯示,而不用考慮資料處理的功能,這樣,系統的耦合性非常低,並且增加了下層**復用性。

和三層的比較:

可以看出來,mvc和三層區別很大,三層的劃分是為了軟體開發過程中不同階段的**封裝問題,層次的劃分增加了系統的靈活性,降低了系統耦合度(沒有完全解決這個問題)。三層架構可以應用在所有的軟體開發中。mvc是為了解決頁面的更換問題,把頁面顯示和業務邏輯分開,mvc把所有的頁面顯示放到view中,把資料操作和處理封裝到了model中,controller進行整體控制。mvc是為了解決bs專案中介面顯示和業務邏輯的耦合問題。

總結:mvc和三層其實都是為了降低系統耦合性的,只是它們側重點不同,它們沒有好壞之分,只是適合不適合解決這個問題或者能否把它用好的問題。

mvc的簡單認識

首先 我們要了解什麼是mvc 我在此簡單說下 mvc model view controller 是軟體工程中的一種軟體架構模式,把軟體系統分為三個基本部分 模型 model 檢視 view 和控制器 controller mvc各部分的職能 在這裡呢 我自己準備啦乙個目錄 應用 config 程式...

mvc簡單的認識

說到mvc,首先大家要知道什麼是mvc?mvc全名是model view controller 是模型,檢視,控制器的縮寫,是一種設計模式,或者說是程式設計思想。是一種業務邏輯和資料顯示分離的方法組織 學習mvc的目的 1.能夠快速上手各大主流php框架,如yii,tp,ci等 2.快速適應多數we...

MVC 基礎認識

mvc是模型 model 檢視 view 控制器 controller 的縮寫,是一種框架,強制性的使應用程式的輸入 處理和輸出分開,是一種軟體設計典範,用一種業務邏輯 資料 介面顯示分離的方法組織 將業務邏輯聚集到乙個部件裡面,在改進和個性化定製介面及使用者互動的同時,不需要重新編寫業務邏輯 mo...