有同学在面试的过程,面试官问了一个这样的问题:请描述一下你理解的ASP.NET MVC与Web Form的区别是什么?
我综合了一下,大致归纳如下:
ASP.NET MVC
优点:
1.MVC各负其责,耦合性更低
2.URL可控,更容易利用搜索引擎
3.更易于对界面逻辑进行单元测试
4.完全控制HTML,WEB开发就是WEB开发
5.易于客户端JavaScript编程
6.易于后台与前台开发人员的配合
7.一切都是可替换的,ViewEngine,Action Filter
8.公开源代码
缺点:
1.大量现有控件无法利用
2.大量约定,对于初学有些难于理解
3.对于规范的页面不如Webform容易
Web Form
优点:
1.模拟windows编程模式
2.事件驱动方式
3.使用ViewState和Postback(打破无状态)
4.丰富的服务器控件,加速了开发速度
5.数据绑定技术
缺点:
1.页面生命周期复杂
2.可能存在过度封装
3.入门虽简单,但非规范化修改困难
以上内容仅供参考。