mvc設計思想
一、mvc的組成部分
為了讓應用的前、後端分離,mvc巧妙的將一個應用分為了三個部分:
V——檢視層
主要用於介面的展示,同時還需要將使用者提交的資料通過表單的方式提交給控制層,並對提交的資料進行校驗。
C——控制層
主要是進行檢視層和模型層的互動,接收檢視層傳過來的引數,並根據邏輯判斷所需要的資料,呼叫模型層的方法獲取資料庫中的資料,然後再返回給檢視層。
M——模型層
主要是對資料庫進行增、刪、改、查操作。
接下來我們就來總結一下采用mvc思想應用的工作流程
首先使用者在檢視層通過瀏覽器傳送請求,檢視層通過自身校驗後,以表單的方式提交給控制層,控制層接收請求、獲取引數後,再根據需求通過模型層對資料庫進行增刪改查操作,控制層再將結果返回給檢視層。
二、採用mvc思想的優缺點
1.mvc的優點
(1):低耦合性,高內聚性,通過MVC的框架將一個系統分成檢視層、控制層、模型層,比如只需要改變檢視層而不需要重新編譯模型和控制器程式碼,同時一個應用的業務流程或者業務規則的改變只需要改變模型層而不需要去修改檢視層和控制器層的程式碼。
(2):高重用性,可以通過不同的檢視層訪問到模型的資料,只需要在控制器層對資料格式做處理,而不需要修改模型層的程式碼。
(3):可維護性,分離出模型層、檢視層、控制層,使得程式碼更容易維護
(4):專案工程化管理,由於不同的層各司其職,有利於工程化、工具化管理程式碼
2.mvc的不足體現在以下幾個方面:
(1)增加了系統結構和實現的複雜性。對於簡單的介面,嚴格遵循MVC,使模型、檢視與控制器分離,會增加結構的複雜性,並可能產生過多的更新操作,降低執行效率。
(2)檢視與控制器間的過於緊密的連線。檢視與控制器是相互分離,但確實聯絡緊密的部件,檢視沒有控制器的存在,其應用是很有限的,反之亦然,這樣就妨礙了他們的獨立重用。
(3)檢視對模型資料的低效率訪問。依據模型操作介面的不同,檢視可能需要多次呼叫才能獲得足夠的顯示資料。對未變化資料的不必要的頻繁訪問,也將損害操作效能。
(4) 目前,一般高階的介面工具或構造器不支援MVC架構。改造這些工具以適應MVC需要和建立分離的部件的代價是很高的,從而造成使用MVC的困難。