亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

ASP.NET MVC與WebForm的區別

ASP.NET MVC與WebForm的區別

守著星空守著你 2019-03-05 10:05:08
ASP.NET MVC與WebForm的區別
查看完整描述

3 回答

?
慕娘9325324

TA貢獻1783條經驗 獲得超4個贊

MVC縱向切割了開發過程中的代碼,從服務器到瀏覽器層層分離,層次之間耦合度很低,因為它是順著底層的開發脈絡進行封裝,所以有利于開發者對整個程序過程流轉的理解。但是MVC有一個非常大的缺點,這個缺點是和整個軟件發展思路相背離的,那就是它無法封裝、無法封裝所以無法被重用。有誰看到過mvc下面的組件?有的只是一個個現成的案例,然后拿來修改。因為一個組件肯定牽涉到控制和顯示,但是mvc的開發這兩個層次是分離的。MVC只適合輕量級的開發,桌面開發是極少用到mvc模式的。然而web開發恰恰就是輕量級,至今所有的web開發都是輕量級的,因為網絡硬件條件的限制,不需要也無法做到非常復雜的邏輯。這也是MVC非常非常適合web開發的原因。
WebForm是微軟前面一套web開發的機制。它橫向切割了代碼,控制和顯示是封裝在一起的。它從開發者思維邏輯上而不是實際情況上對代碼進行封裝,開發webform容易上手的原因也就在此了,但這個不利于開發者對底層程序流轉機制的理解。WebForm中view和controller是放在一起的,WebForm一出現后,隨之而來的是大量的組件誕生,這是mvc模式下看不到的。微軟的經驗之一是硬件發展很迅速。代碼的封裝是靠犧牲運行效率來提高開發效率,犧牲的運行效率通過提高硬件性能來解決。但微軟在webform上犯了經驗主義的錯誤,這個經驗不適合網絡硬件,網絡硬件要考慮兼容性而且是國家的基礎設施,更新的靈活性遠比單機要差。大量的組件因為硬件的瓶頸無法給WebForm帶來什么優勢。在發展了幾年webform后,微軟覺得這樣下去不行,等到網絡硬件發展起來不知道到猴年馬月了,所以就抄了一下成熟的mvc,通過Entity Framework做數據庫和對象的映射,很明顯,它是為了充當mvc中那個Model。通過mvc來控制和展示。
webform生產關系是比mvc先進的,但是它不適合現在的網絡設施生產力,如果要適合說不定要10年后。webform和mvc很好的印證了生產關系必須適合生產力,即使強大如微軟也無法改變客觀規律。

查看完整回答
反對 回復 2019-03-14
?
30秒到達戰場

TA貢獻1828條經驗 獲得超6個贊

webform 的一些缺點:
1.webfrom 使用的控件生成的html代碼不太干凈,會有些不想要的東西出現
2.webform 中頁面的ViewState 過于沉重,使得WEB的性能上有一些影響
3.webform 不利于單元測試
mvc的一些優點:
層次架構更分明,適合做大中型項目。單元測試更方便。 生成的html代碼干凈整潔。MVC路由解決了頁面靜態化的一些需求。

查看完整回答
反對 回復 2019-03-14
?
慕沐林林

TA貢獻2016條經驗 獲得超9個贊

WebForm是簡單的窗體設計,前端在.aspx,后置代碼.cs負責事件處理;MVC顧名思義就是分成了Model模型,View視圖,Controller控制器三個部分,進行分工工作。對于大的項目開發,顯然MVC更適合,總不能所有東西都讓一個人來做吧,呵呵

查看完整回答
反對 回復 2019-03-14
  • 3 回答
  • 0 關注
  • 733 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號