美文网首页
面经之框架通识有感

面经之框架通识有感

作者: Estarsyang | 来源:发表于2018-09-01 14:38 被阅读0次

MVC


M:Model    数据模型

V:View    界面视图

C:controller    逻辑

通讯的方向,都是单向的

互动的模式

一般分为两种,1.通过view接受指令,传递给controller。然后controller控制model影响view。

第一种

第二种,controller接受指令后,控制model并修改view

第二种

具体可查看阮老师的博客 MVC,MVP 和 MVVM 的图示 - 阮一峰的网络日志

MVVM


V:view    界面

M:model    数据模型,和我们的业务需求或业务实体是一 一映射关系。

VM:viewmodel    沟通 view 和model。

View 和 ViewModel双向绑定

单向绑定/双向绑定

单向绑定:指的是ViewModel改变会影响到View的改变,例如 ViewModel中操作的数据由true变为false。那么View中绑定这个数据的元素就会执行相应的操作。

双向绑定:单向绑定基础上增加了View影响到ViewModel的改变。例如View中一个input输入框,输入内容后,ViewModel中就会改变相应的数据。最简单的例子就是vue中 v-model 语法。

这里讲的挺详细的,请移步  什么是 MVVM 模式? - 简书

MVVM框架中,就核心的就是数据的双向绑定,其中有angluar的脏数据检测和vue中的数据劫持。

脏数据检测

当指定事件触发后进入脏数据检测,会调用 $digest 循环遍历所有数据,判断当前值和先前值是否相同,如果不一致,就会调用 $watch 函数,然后再调用 $digest 循环直到发现没有变化。循环至少为2次,至多为十次。

优点:1.检查所有数据,直到没有更新,再去统一UI,减少操作dom次数。

缺点:1.需要检查所有数据,进行对比,会比较消耗性能。

数据劫持

Vue 只要利用了 Object.defineProperty()实现双向绑定,通过这个函数监听 Object的set和get事件,然后通过观察者,发布订阅模式修改。

两者的对比

来自 vue官方,说的比较客观,主要看双向绑定那里。对比其他框架 — Vue.js

路由原理


前端路由的前生今世及实现原理 - FE-杂货铺 - SegmentFault 思否        这里有个详细的

前端路由实现起来其实很简单,本质就是监听 URL 的变化,然后匹配路由规则,显示相应的页面,并且无须刷新。目前单页面使用的路由就只有两种实现方式

1.hash 模式

2.history 模式

www.test.com/#/ 就是 Hash URL,当 # 后面的哈希值发生变化时,不会向服务器请求数据,可以通过 hashchange 事件来监听到 URL 的变化,从而进行跳转页面。

如图

Virtual Dom    虚拟DOM


操作DOM是一件非常耗费性能的事情,但是操作一个JS对象性能就会好的多。可以通过操作js对象,把与数据给整理出来,然后再用这个数据去渲染界面,这样性能就好的多。

Virtual Dom 算法描述


可以通过js来模拟实现dom,剩下的问题,就是这么判断新数据和旧数据的差异。请移步 框架通识 | InterviewMap

Virtual Dom算法的实现,就是三步
1.通过js来模拟创建DOM对象。

2.判断两个对象的差异。

3.渲染差异。

相关文章

  • 面经之框架通识有感

    MVC M:Model 数据模型 V:View 界面视图 C:controller 逻辑 互动的模式 一般分...

  • 品味《道德经》之十五

    品味《道德经》之十五 【原文】 古 之 善 为 道 者 , 微 妙 玄 通 , 深 不 可 识。夫 唯 不 可 识...

  • 【觉悟《道德经》,藏巧于拙、用晦而明】

    【觉悟《道德经》,藏巧于拙、用晦而明】 《道德经》云:古之善为士者,微妙玄通,深不可识。夫唯不可识,故强为之容;豫...

  • 百字瞻瞻40:古之善为道者,微妙玄通,深不可识

    百字瞻瞻——道德经与孩童生长 古之善为道者,微妙玄通,深不可识。夫唯不可识,故强为之容。————《道德经 . 第十...

  • 复录群书《玄女经四十九章》

    第三十九篇 略方 经有得,得有识。识识知识,故为深也。识而不发,谓之浅也。至理缘道,至道缘玄,众玄之境,通...

  • 《道德经》学习(五)

    放假了,终于可以继续好好读读《道德经》了,哈。 第十五章 经:古之善为士者,微妙玄通,深不可识。夫!唯不可识,故强...

  • 被窝里的“热闹”

    【成长日志】:2019年06月14日 星期五 【今日明经】古之善为道者,微妙玄通,深不可识。夫唯不可识,故强为之...

  • 道德经 第十五章 微妙玄通

    道德经 第十五章 微妙玄通 古之善为士者,微妙玄通,深不可识。夫唯不可识,故强为之容;豫兮若冬涉川;犹兮若畏四邻;...

  • 坐而论道:静之徐清 动之徐生

    道德经·第十五章 【作者】老子 【朝代】春秋时期 古之善为士者,微妙玄通,深不可识。 夫唯不可识。 故强为之容:豫...

  • 读书打卡day61/100

    《道德经》国学经典教育读本 上篇|第十五章 经典原文——古之善为道者,微妙玄通,深不可识。复唯不可识,故强为之容。...

网友评论

      本文标题:面经之框架通识有感

      本文链接:https://www.haomeiwen.com/subject/lvoswftx.html