简单说明吧,三层框架就像一个水果一样,一层套一层,我们只能看到最外层果皮,扒开一层果皮之后才能看到第二层果肉,扒开第二层果肉才能看到第三层果核。也可以说是一个糖葫芦,吃掉第一个才能吃第二个。
MVC不是鸡蛋结构,而是一个三角形的结构,就像人体内的神经系统、营养系统、氧气系统站在你面前,不过是VIEW层站的比较靠前,而model和Controller站的比较靠边,当你靠近看的时候就只能看到v或者m,或者c,但是如果你换一个角度就可以看到另外两个。MVC三个人分别从不同的角度支撑整个网站。M主管数据,有些像是果核,但是这个果核除了提供数据还操作数据,所以果核果肉都贵他管。主要负责营养输送。
V就是视图VIEW么,顾名思义他和果皮有些相像,但是这个又不能成为果皮,因为v是可以与m直接对话的,v可以直接从m中取数据。m也可以直接通过v显示数据,甚至m的数据也可以决定v的结构。氧气输送者。
从上面看M和v貌似已经很完美了,c貌似没用,其实如果从另一个角度来说c是最有用的,c就像是url,他把url完全当作一个外部接口,一切的外部通讯,链接m和v都要靠c实现,c就像是一条条的神经系统。
总是MVC就是三者分离,又相互交叉。
MVC是Java中的一种设计模式,在你写程序的时候一定得按照这样的模式写代码,他的目的是为了减少层与层之间的耦合,方便后续的维护
M——指的是Model,即模型,在实际的开发中我们的实体类就是我们的模型,再通俗一点就是你写了很多private修饰的变量,然后写了很多get、set方法的类就叫模型
V——指的是View,即视图,就是我们JavaWEB中的视图,也就是JSP了,通俗一点就是用户可以看到的页面就叫做视图
C——指的是Controller,即控制器,就是我们在接收前端穿过来的请求的那个类就叫做控制器,比如我们的servlet,向模型发送数据,控制用户输入,读取视图的数据
对象不同:
MVC包括三类对象,Model是应用对象、View为其屏幕表示、Controller定义了对用户输入的处理方式。在应用MVC方式以前,通常将这三个对象的功能合到了一起,应用MVC分离了它们,为设计提供了灵活性和可重用性。
MVC设计模式是目前最流行的Web应用设计模式,给项目代码的管理和维护带来了很大的便利。
结构不同:
B/S结构(Browser/Server结构)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。
在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。
BS优点:可以在任何地方进行操作而不用安装任何专门的软件。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。
BS缺点:个性化特点明显降低,无法实现具有个性化的功能要求。BS操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。BS页面动态刷新,响应速度明显降低。BS无法实现分页显示,给数据库访问造成较大的压力。BS功能弱化,难以实现传统模式下的特殊功能要求。
MVC优点:各施其职,互不干涉;在MVC模式中,三个层各施其职,所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码。
MVC缺点:增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
mvc(model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:
模型(model),视图(view)和控制器(controller)。
m指
模型。即程序员编写程序应有的功能(实现算法等等),数据库专家进行数据管理和数据库设计(可以实现具体的功能)。
模型(model)
用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“
model
”有对数据直接访问的权力,例如对数据库的访问。“model”不依赖“view”和“controller”,也就是说,
model
不关心它会被如何显示或是如何被操作。但是
model
中数据的变化一般会通过一种刷新机制被公布。为了实现这种机制,那些用于监视此
model
的
view
必须事先在此
model
上注册,从而,view
可以了解在数据
model
上发生的改变。
微软msvc++视窗程序
的
mfc
document/view架构
是早期对于mvc模式的实现,mfc将程式分成cview以及cdocument两大类别,其中的document对应mvc中的
model
,view
相当于mvc中的
view+controller,再加上cwinapp类别,合成三大项。但是基本上mfc是一个失败的mvc模式作品。
MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。[1-2]
模型-视图-控制器(MVC)是Xerox PARC在二十世纪八十年代为编程语言Smalltalk-80发明的一种软件设计模式,已被广泛使用。后来被推荐为Oracle旗下Sun公司Java EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。模型-视图-控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。[3]
mvc一种软件设计思想,一种软件设计架构,它适很多主流的开发语言。
http://baikebaiducom/linkurl=sw-fdWaquB4kryokinKRtBH8b2SdwKf1B4yFK37YcUAWOkYw987yyg-QOLbe4R-Gm9LjYgnv8qB-Qrd5DYBsHQEYy0lXNqIoS_yuLr3Ox8y
欢迎分享,转载请注明来源:浪漫分享网
评论列表(0条)