MVC和WebForm的優缺點對比

2022-09-12 07:54:18 字數 1742 閱讀 3414

mvc和webform的優缺點對比 

1 webform優點

1)支援事件模型開發,得益於豐富的服務端元件,webform開發可以迅速的搭建web應用

2)使用方便,入門容易

3)控制項豐富的webform

2 webform缺點

1)封裝太強,很多地層東西讓我們初學者不是很明白

2)入門容易,提公升很難。

3)複雜的生命週期模型學習起來並不容易。

4)控制不靈活

5)viewstate處理

6)非同步請求每個請求後台都必須有乙個一般處理程式對應

7)跟傳統的web開發方式不一致

3 mvc優點

1)很容易將複雜的應用分成m,v,c三個元件模型,通過model,view和controller有效的簡化了複雜的架構, 體現了很好的隔離原則

2)因為沒有使用server-based forms。所以我們程式設計師控制的更加靈活,頁面更加乾淨。

3)可以控制聲稱自定義的url,對於seo友好的url更是不在話下

4)強型別的view實現,更安全,更可靠,更高效。

5)讓web開發可以專注於某一層,更利於分工配合使用與大型架構開發

6)mvc下面對非同步處理更進一步很好的支援

7)校驗非常高

8)表單提交的時候,提供自動裝配的功能

9)微軟提供的全域性的過濾器

mvc優缺點

mvc的優點

大部分用過程語言比如asp、php開發出來的web應用,初始的開發模板就是混合層的資料程式設計。例如,直接向資料庫傳送請求並用html顯示,開發速度往往比較快,但由於資料頁面的分離不是很直接,因而很難體現出業務模型的樣子或者模型的重用性。產品設計彈性力度很小,很難滿足使用者的變化性需求。mvc要求對應用分層,雖然要花費額外的工作,但產品的結構清晰,產品的應用通過模型可以得到更好地體現。

首先,最重要的是應該有多個檢視對應乙個模型的能力。在目前使用者需求的快速變化下,可能有多種方式訪問應用的要求。例如,訂單模型可能有本系統的訂單,也有網上訂單,或者其他系統的訂單,但對於訂單的處理都是一樣,也就是說訂單的處理是一致的。按 mvc設計模式,乙個訂單模型以及多個檢視即可解決問題。這樣減少了**的複製,即減少了**的維護量,一旦模型發生改變,也易於維護。其次,由於模型返回的資料不帶任何顯示格式,因而這些模型也可直接應用於介面的使用。

再次,由於乙個應用被分離為三層,因此有時改變其中的一層就能滿足應用的改變。乙個應用的業務流程或者業務規則的改變只需改動mvc的模型層。

控制層的概念也很有效,由於它把不同的模型和不同的檢視組合在一起完成不同的請求,因此,控制層可以說是包含了使用者請求許可權的概念。

最後,它還有利於軟體工程化管理。由於不同的層各司其職,每一層不同的應用具有某些相同的特徵,有利於通過工程化、工具化產生管理程式**。  

mvc的不足

mvc的不足體現在以下幾個方面:

(1)增加了系統結構和實現的複雜性。對於簡單的介面,嚴格遵循mvc,使模型、檢視與控制器分離,會增加結構的複雜性,並可能產生過多的更新操作,降低執行效率。

(2)檢視與控制器間的過於緊密的連線。檢視與控制器是相互分離,但確實聯絡緊密的部件,檢視沒有控制器的存在,其應用是很有限的,反之亦然,這樣就妨礙了他們的獨立重用。

(3)檢視對模型資料的低效率訪問。依據模型操作介面的不同,檢視可能需要多次呼叫才能獲得足夠的顯示資料。對未變化資料的不必要的頻繁訪問,也將損害操作效能。

(4) 目前,一般高階的介面工具或構造器不支援mvc模式。改造這些工具以適應mvc需要和建立分離的部件的代價是很高的,從而造成使用mvc的困難。

MVC模式的優缺點

mvc就是常說的 模型 model 檢視 view 和控制controller 它把業務處理和jsp頁面分開了。而以前的jsp頁面是把所有的 都寫在jsp頁面中,那樣不利於維護 mvc模式的目的就是實現web系統的職能分工。1.mvc模式的好處 1.各施其職,互不干涉 在mvc模式中,三個層各施其職...

MVC與WebForm的區別

原文 筆記 1.webform優點 缺點 2.mvc 優點 2015 10 28 22 03 518人閱讀收藏 舉報 自己的理解 mvc相對於webform來說更難學習,但效能優於webform,比較適合大型專案,開發成本較高,但耦合度低,易於維護,沒有太多的現成控制項,開發效率較低。對webfor...

MVC與WebForm最大的區別

分析了mvc的工作工程,就可以對比其與webform的區別了。我們知道,mvc模式的業務被放置到controller中去執行,而aspx頁面只負責顯示。那麼在mvc中的業務實際執行時間被提前到了httpmolde中,而webform的請求只在httphandler容器中被執行。也就是說mvc中con...