15919993369

MVC模式网站设计介绍

更新时间:2020-05-16

前几天在看维基百科介绍 Ruby 程序语言的时候,看到 Ruby on Rails 是一个 MVC 的快速网站开发应用框架(Framework,在程序设计的领域是指一个提供该程序语言开发相关函数库或是虚拟机等等的环境),突然又出现一个缩写名词让我忍不住转而去查询这个缩写的意思,根据伟大的维基百科记载,MVC 的全文是:Model-View-Controller,是软件工程上面的一种软件设计模式(或称软件架构),接着一看这三个名词分别代表的意思:

M(模型 Model)-程序设计师编写程序应有的功能(实作算法等等)、数据库专家进行数据管理和数据库设计(可以实作具体的功能)。 

V(查看 View) -接口设计人员进行图形接口设计。 

C(控制器 Controller)-负责转发请求,对请求进行处理。 

 

对于这三个的解释,首先要讲一下传统上对于网站或应用程序开发的分工与设计模式,很多时候,人们会把做网站设计的人想成一定就是设计+程序都要会,其实不然(虽然很多网站设计人才是两样兼备),设计和程序是可以分开的,设计是程序与外界的互动表现(Representation),而程序才是整个网站互动的基础,所有互动的参数传递、数据运算、回馈、数据呈现、数据抓取等等都是由程序负责,而这个工作其实很大部分是没有表现出来的,举例来说,设计就是打开浏览器,看到画面上 搜索引擎 的 Logo 和下面的输入框及搜索按钮,而当你按下搜索,网站会送出你输入的值,传送给一个档案,由那个档案负责做 Search 的运作,没错!那个档案就是程序。


有时候因为网站的互动功能较少,或是为了做功能上的区隔,会将 UI 和 Logic 写在同一个档案(很多 PHP 网站即是如此),所以才会给人一种网站(程序)设计就是整个网站(也就是UI)的错觉,MVC 就是把程序与设计做一个区隔,让设计人员专心做设计,程序设计师专心写程序。


而目前实务界最常采用的系统设计是前面提到的三层式体系结构,也就是由用户接口、企业逻辑、数据库三者链接而成的,用户可以通过 UI 与系统互动,但是 UI 只负责与使用者互动并传递使用者改变的相关参数到下一层的企业逻辑去,由逻辑曾进行逻辑运算,而逻辑运算的广大数据基础便是建设在企业内部或是云端上的数据库、是数据仓储、数据中心。UI 和数据库很容易区别,但是对于传统写网站的人员而言,可能会和我一开始碰到逻辑层时一样,不明白区别在哪里,这个概念,其实就是 MVC 的实践,可以用一个概念来思考:UI 就是设计,Logic 就是程序。


在这种分工合作的建设模式之下,不管哪一部分的开发都可以由这方面的专家团队快速完成,减少专业的冲突与沟通,这也是为什么企业在软件工程逐渐采用 MVC 的原因,当然如果你能够会写程序又会设计,我想这对你而言应该不会是问题。









Copyright © 2016-2020 https://www.xundang.com 深圳市迅当网络科技有限公司 版权所有 粤ICP备16022386号-1

  • 微信号

  • 15919993369