MVC全称Model View Controller,是模型(model)-视图(view)-控制器(controller)缩写是一种软件设计模型,通过业务逻辑、数据和界面显示分离组织代码,将业务逻辑集中在一个组件中。在改进和个性化定制界面和用户交互的同时,无需重写业务逻辑。MVC在逻辑图形化用户界面的结构中,用于映射传统的输入、处理和输出功能。了解并掌握MVC模式框架学习和使用我们MVC框架起到了推波助澜的作用。
MVC最初存在于桌面程序中,M是业务模型,V是用户界面,C是控制器,使用MVC的目的是分离M和V的实现代码,使同一程序可以使用不同的表达形式。例如,一批统计数据可以分别用柱状图和蛋糕图表示。C存在的目的是确保M和V的同步,一旦M改变,V应该同步更新。
MVC是指MVC模式的一个框架,它强制将应用程序的输入、处理和输出分开。MVC应用程序分为模型、视图和控制器三个核心部件。他们处理自己的任务。最典型的MVC是JSP + servlet + javabean模式。
框架和设计模式的概念总是很容易混淆。事实上,它们之间仍然存在差异。框架通常是代码重用,而设计模式是设计重用。架构介于两者之间。有些代码重用,有些设计重用,有时分析也可以重用。软件生产中有三个层次的重用:内部重用,即可在同一应用中公开使用的抽象块;代码重用,即将通用模块组合成仓库或工具集,以便在多个应用和领域使用;应用框架的重用是为特殊领域提供一般或现成的基础设施,以获得最高的重用。
针对以上概念,我们可以清楚地知道我们学到的一些框架是什么MVC框架模式,下面一一介绍。
一、Struts
Struts是Apache软件基金下Jakarta项目的一部分。Craiggg开发者是Struts框架的主要架构设计和开发者 R.McClanahan。Struts 是Java Web MVC框架中无可争辩的王者。经过九年的发展,Struts逐渐发展成为一个稳定成熟的框架,在MVC框架中占据了最大的市场份额。但Struts在某些技术特性上已经落后于新兴的MVC框架。面对Spring MVC、Struts受到了前所未有的挑战,比如Webwork2,这些框架设计更精确,扩展性更强。但从产品开发的角度来看,Struts仍然是最安全的选择。
二、Spring
Spring实际上是Expertt One-on-One J2EE Design and Development 具体实现了一本书中阐述的设计思想。在One-on-One 一书中,Rod Johnson倡导J2EE实用主义的设计理念,并提供了实现interface21的初步开发框架 开发包)。而Spring 正是这一思想更全面、更具体的体现。Rod Johnson interface21 在开发包装的基础上,进一步进行了改造和扩展,使其发展成为一个更加开放、清晰、全面、高效的开发框架。
三、ZF
Zend Framework(简写ZF)是由 Zend 公司支持开发的完全基于 PHP5 开源PHP开发框架可用于开发 Web ZF采用程序和服务 MVC(Model–View-Controller) 为了方便程序的开发和维护,架构模式分离了应用程序的不同部分。
四、.NET
.NET MVC是基于MVC模式的微软官方提供的.NET 网络应用程序(Web Application)框架,它来自Castle的Monorail(Castle的Monorail来自Java),最新版本是.N 4.5。
MVC模式框架降低了开发和维护用户界面的技术含量,MVC模式框架具有较高的可维护性,这使得MVC模式框架广受欢迎。在项目中选择一个好的框架对于项目的效率和可重用性至关重要。只有不断学习更多的框架,我们才能有更多的选择。