您好,欢迎访问一九零五行业门户网

浅谈MVC与三层架构

首先给大家引入下mvc的概念:  mvc(model view controller)模型、视图以及控制器,它是一种较为广泛应用的结构设计模式。
  模型:就是在mvc设计模式中需要被显示的数据。在通常情况下,该模型需要从数据库中读取数据、保存模型的状态等,提供数据的访问方法以及数据的维护。
  视图:就是用来显示模型中数据的用户界面,一般来书,视图就是html页面。
控制器:就是用来处理对用户的输入或者交互命令,以便改变模型的状态,选择适当的视图来显示对应的模型数据。
  工作机制如右图所示:  (1)用户向控制器发出请求。
  (2)控制器收到用户请求后,向模型请求获得相关的数据。
  (3)模型将对应的数据返回给控制器。
  (4)控制器将有关数据发送到指定的视图。
  (5)视图将数据呈现给用户。
  通过上面的介绍相信大家对于mvc也有了一定的了解和认识,那么mvc与原先我们学习过的三层架构到底有哪些相同点,又有哪些不同之处呢?
  mvc与三层的共同点:  mvc与三层架构的触发点事相同的——分层,解耦。它们都做到了显示与数据的分离,大大降低了系统的耦合性。
  但是从专业角度来说mvc与三层没有任何关系,三层是三层,mvc是mvc。唯一能把他们联系在一起的就是“三”这个字了,不过从初学者的角度把二者放在一起区分起来学习也更容易理解。
  mvc与三层的不同点:  可以说它们之间除了相同的剩下的全是不同点。它们有着各自的工作机制详情请见下图:
三层中的ui在mvc中被分解为view和controller,bll和dal被合并为model。另外在三层中虽然叫做三层架构,但是我们可以根据需要分为多层。三层中也涉及到model,但是三层里面的model跟mvc中的model完全是两回事,三层中的model是表实体,而mvc中的model中包括业务逻辑和数据访问。
  mvc对于web form的特点:  (1)易于单元测试
  (2)容易实施测试驱动开发
  (3)易于扩展和替换
  (4)支持web form中的有关特性
  (5)url被映射到控制器
  虽然mvc对于web form有一些新的特性,但是mvc并不能替代传统的web form技术,这两种技术只是应用在不同场景,具有不同的优、缺点。不能片面的说那种技术高那种技术低,开发者需要根据自己的实际情况选择相应的技术开发项目。以上是个人通过查阅相关资料对mvc于三层架构之间的一些认识,有不足之处,请大家批评指正。
以上就是浅谈mvc与三层架构的内容。
其它类似信息

推荐信息