asp.net mvc框架优缺点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net mvc框架优缺点相关的知识,希望对你有一定的参考价值。

麻烦了很急

MVC优点:
1.大型开发的时候容易维护,扩展性很好。
2.能够对html有完全的控制权限,对于前端来说很友好。
3.能够进行单元测试,保证功能的实现。

缺点:
1.没有那么多的现成控件使用,开发效率相对较低(特别是对于菜鸟来说)
2.对于大型数据的处理比较难,还是因为没有现成girdview控件。这个控件虽然生成的html结构异常复杂,但是对于处理大量而且复杂的数据来说是很不错的。不过一般网站是很少有这种大量且复杂的数据,很多菜鸟都是用这个大炮来打蚊子,浪费且低效率。对于网站开发来说这个控件应该不推荐使用。

刚学的菜鸟和在需要快速开发的情况下用webform就很好。
需要可扩展性,高度控制性情况下用MVC好。但是用这个框架门槛相对较高,如果你只懂asp.net 的webform开发形式的话,因为webform已经帮你做了太多的事情,换句话说你根本不知道真正的web开发是怎么样的。反而精通php,asp的人更容易上手。

MVC和webform开发各有各的用途。
但是你不应该使用asp.net mvc框架,如果符合下面几条:
你对多态不是“非常”的熟悉
你不喜欢在这个框架上构建应用程序
你依赖于很多第三方的UI控件
你不喜欢使用开源的程序
参考技术A asp.net mvc 优缺点:
不再有ViewState:传统的ASP.NET WebForm模式利用ViewState保存表单的状态信息,由于B/S程序本身的限制,ViewState存储数据需要在隐藏表单域里面放置很大一段字符串,这会大大增加页面的字节数,导致网页加载变慢;

简介的HTML:最终生成的 HTML代码完全由自己控制,不会生成任何“垃圾代码”;

更快的服务器端处理和客户端呈现:MVC只简单地处理“模板”,而无需构建复杂的控件树,因此,无论是在服务器处理的时间,和客户端的呈现速度都会有所提高;

为多种视图只需一种模型:有时候一个页面要显示的数据是同一个,但表现形式有细微的差别,此时只需要修改视图部分,可以采用现有的控制器行为;

单元测试:Webform的测试是很困难的,使用MVC,可以将业务逻辑与页面分离开,可以不在ASP.NET进程中执行控制器,方便测试
参考技术B 利用Routing特性提高ASP.NET MVC站点的SEO权重,URL地址友好

asp.net与asp.net 优缺点

Asp.net Mvc架构模式是一种 低耦合、可测试的web应用程序框架,它是基于CLR和成熟的MVC架构构建的。ASP.NET MVC不支持ViewState和服务器控件。 

Asp.net优点:

1.架构降低了程序间的耦合性,M V C,分层,目标明确
2.性能 不支持viewstate,完成html,已于结合jquery使用,提供程序性能
3.支持并行开发,可扩展性好,继承asp.net 特性:表单验证、缓存、会话等。

4.强类型View实现,更安全、更可靠、更高效

5.有利于组件的重用 

6.更好的支持单元测试
缺点:
1.没有viewstate和基于事件的编程,上手慢,学习成本高。 

 

asp.net优点:

1.支持丰富的服务器控件。如:GridView和ListView可以绑定数据,从而减少了大量的代码编写
2.支持视图状态,每个控件状态以“隐藏域”的形式存在当前表单页面来达到“有状态”,这就是ViewState
3.基于事件驱动编程, 如:click事件等,aspx页面与cs文件分离,即显示逻辑与处理逻辑分离,便于分工,美工 、编程。不像asp代码混乱
4.学习成本低 
缺点:
1.站在项目架构的角度,web form 不是很理想架构模式,尽管可以使用经典的三层架构或者mvp,,但不是最优秀的。
2.性能 viewstate成功解决了asp问题,但同样引入新的问题,viewstate页面存储势必增加页面大小、降低程序性能
3.代码可重用性不好;缺少对并行开发支持,因为aspx页面与cs紧密耦合太高; Seo不友好,因为 url指定具体aspx页面;不利于单元测试,因为使用大量事件处理函数

4.控制不灵活

5.入门容易,提升很难

6.封装太强

以上是关于asp.net mvc框架优缺点的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET MVC Bundling and RequireJS

ASP.NET程序的几种开发方式

asp.net mvc 和 web api 哪个更好 Http POST 或 PUT

.net web开发有WEBFORM、MVC、EF等来开发,它们各有啥优点和缺点?

浅析ASP.NET Webform和ASP.NET MVC

.NET 的不同 MVC 框架的优缺点