当前位置: 首页 > 面试题库 >

说说你对MVC和MVVM的理解

何涵忍
2023-03-14
本文向大家介绍说说你对MVC和MVVM的理解相关面试题,主要包含被问及说说你对MVC和MVVM的理解时的应答技巧和注意事项,需要的朋友参考一下

MVC是一种设计模式,全称是Model(模型)、View(视图)和Controller(控制)。

  • Model(数据层):储存和管理数据
  • View(视图层):展示UI、响应用户的交互
  • Controller(控制层):监听数据的改变、控制视图行为和处理用户交互

这三层紧密联系,又互相独立,每一层内部的变化不影响其他层。每一层对外提供接口,供上一层调用。实现程序的模块化

MVVM是对MVC的增强版

将MVC中Controller的数据和逻辑处理部分抽离出来,放在了ViewModel中,这样只需做好View与ViewModel的数据绑定既可。

(项目复杂度越来越高之后,MVC中的Controller会变得越来越臃肿,难以维护,所以将其中的数据和逻辑处理抽离出的MVVM更佳)

 类似资料:
  • 本文向大家介绍说说你对MVC、MVP、MVVM模式的理解相关面试题,主要包含被问及说说你对MVC、MVP、MVVM模式的理解时的应答技巧和注意事项,需要的朋友参考一下 ickt-5: https://www.cnblogs.com/keitsi/p/5764785.html

  • 本文向大家介绍说说你对AMD和Commonjs的理解相关面试题,主要包含被问及说说你对AMD和Commonjs的理解时的应答技巧和注意事项,需要的朋友参考一下 CommonJS是服务器端模块的规范,Node.js采用了这个规范。CommonJS规范加载模块是同步的,也就是说,只有加载完成,才能执行后面的操作。AMD规范则是非同步加载模块,允许指定回调函数。 AMD推荐的风格通过返回一个对象做为模块

  • 本文向大家介绍说说你对provide和inject的理解相关面试题,主要包含被问及说说你对provide和inject的理解时的应答技巧和注意事项,需要的朋友参考一下 通过在父组件中inject一些数据然后再所有子组件中都可以通过provide获取使用该参数, 主要是为了解决一些循环组件比如tree, menu, list等, 传参困难, 并且难以管理的问题, 主要用于组件封装, 常见于一些ui组

  • 本文向大家介绍说说你对Relay的理解相关面试题,主要包含被问及说说你对Relay的理解时的应答技巧和注意事项,需要的朋友参考一下 https://relay.dev/ Relay是Facebook在React.js Conf(2015年1月)上首次公开的一个新框架,用于为React应用处理数据层问题。 在Relay中,每个组件都使用一种叫做GraphQL的查询语句声明对数据的依赖。组件可以使用

  • 本文向大家介绍说说你对this的理解相关面试题,主要包含被问及说说你对this的理解时的应答技巧和注意事项,需要的朋友参考一下 js 中有两个重要概念:作用域和原型链 我个人感觉 作用域对应函数式开发,闭包是主要工具 原型链对应对象式开发,this 是主要工具,把一些操作封装在一个工具包上,然后用 this 来调用

  • 本文向大家介绍说说你对eval的理解相关面试题,主要包含被问及说说你对eval的理解时的应答技巧和注意事项,需要的朋友参考一下 不安全的, 容易出错, 因为你不知道你传入的参数是什么鬼 性能底下. 某种情况下跟new Function(), setTimeout, setInterval类似 不利于代码可维护性, 可拓展性 不是在无可奈何的情况下, 请不要使用