大家好,又见面了,我是你们的朋友全栈君。
MVC模式的优点:
1、关注点分离:每个功能至少会被切分成为M-V-C三个部分,让开发者只需要关注一个部分,进而降低复杂度,提高开发速度。
2、分层负责,进而降低复杂度,提高开发速度。
3、自由操控HTML:在ASP.NET MVC 中已经不使用控件,回归到网页基本元素HTML、CSS和JavaScript,因此灵活性大幅度增加。
4、方便使用程序包:可以自由操控HTML,因此使用第三方程序包变得非常简单(与Web Forms 相比)。
5、与设计沟通更直观:不需要再将视觉设计的HTML重新改成控件,直接使用HTML即可,套版后的HTML(View)设计也可以看的懂,有利于后续微调页面。
6、开放源码:ASP.NET MVC 是开放源码的项目,意味着如果需要就可以定制ASP.NET MVC 来达到需求。
7、移动设备支持度:ASP.NET MVC 4以后的版本针对移动网站增加了许多功能,对于变化更多的移动设备也能有很好的支持。
8、开发简单:不再有页面生命周期,回归到无状态的网页,经由HTTP动词来处理不同情况的操作。
9、网页流量降低:ViewState不再存在,并且内建CSS、JS捆绑与最小化机制与各种各样的Helper,可以有效地降低数据传输量。
10、快速开发:拥有许多不同种类的Template,可交互使用,提高开发速度。
MVC模式的缺点:
1、增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
2、视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但确实联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。
3、视图对模型数据的低效率访问。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。
4、 目前,一般高级的界面工具或构造器不支持MVC模式。改造这些工具以适应MVC需要和建立分离的部件的代价是很高的,从而造成使用MVC的困难。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/162909.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...