mvc是什么?

MVC框架并不是一个复杂的东西,分别指model,view,controler/即模型,视图,控制器。切记,数据存储在model中,数据的显示依靠View控制,数据的变化使用Controller控制。好处是结构更清晰,代码易读。

  • 模型表示应用程序中处理业务数据和业务逻辑的部分,模型可以是一个单个对象,或是它也可以是由多个对象组成的某些结构。

  • 视图是用于将信息展现给用户的一个模型的表示。它通常充当一个表现过滤器,只是将一个模型中包含的某些方面的数据展现出来,而隐藏另外一些数据。视图向模型请求,以获取需要表现的数据。它也可以通过发送相应的命令,来修改模型中的数据。这样的查询和命令,都必须在模型中由语义定义。

  • 控制器充当用户和应用程序之间的连接,它安排视图在屏幕上显示,或者通过显示菜单,输入字段,按钮或其他的页面元素来读取用户输入。控制器先解释用户输入,然后将其传递给一个或多个视图。

    在代码中,页面内容存储在支撑应用程序的模型中。技术性的细节可能有所不同,文本和图像可能存储在数据库中,而服务器文件则以其他的方式存储,但是,数据融合在一起的规则是相同的,都是作为框架的模型部分进行编码。视图则通过HTML和CSS给内容添加了一个或多个可视化的显示层,应用这些层面可以给Web应用程序一种特定的外观和样式。我们可以修改内容显示的方式,而根本不需要修改模型中存储的初始的内容。控制器则负责与控制相关的,比如包含了连接到页面上的交互元素的程序代码,例如,表单字段,按钮和链接等。这些代码解释用户输入并与模型和视图通信。

MVC在实际框架如VUE中的具体实现。

  • 常见的MVC框架中,MVC只是基础,是为了使代码结构更清晰,换句话说是为了使其他的GoF实现起来更方便,如AngularJS,VUE等MVC框架,mvc是框架最大的逻辑,在MVC的基础上,使得其他的GoF,如模块化,依赖注入(或称控制反转),数据绑定,链式调用,模板,职责分离等都在这个基础上实现,依靠MVC可以使整个整个框架逻辑整清晰。

    就MVC而言,其实它不单单是一种model,view,control的概念在面向对象中运用也是很广泛的。比如,我们知道面向对象的基础是多态,继承,封装。封装.就是一种MVC的实现。如一个对象有Private attr,public attr,Private function,public function,内部的都可以整合到模型层,外部的都是视图层,外部和内部交换数据,实现控制的,都是控制层。对MVC而言,当我们谈MVC时,我们看到的是. 模型,视图,控制器。一样的,对象亦是如此,对象作用域,对象行为方法,对象控制方法。这不正也是一种可以称为类似MVC模式么… 而且.对象的数据,行为,和一个MVC的行为可以称为是一模一样的。MVC实现了对数据的封装,将表示层和控制层与数据层分离。
    就面试而言,可以回答很多,软件工程上的, 可维护性,可移植性…。 面向对象上的 数据隐藏,封装…。设计模式上的 各种GoF,最小暴露原则,小核心,小模块,小接触面…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值