解析Vue源码之前
在分析源码之前,要明确Vue到底做了什么事。从开发角度来说,Vue创建了一种新的开发模式;从浏览器渲染角度来说,Vue创建了一种新的渲染方式。前者方便了开发者,提升了开发效率;后者提升了渲染性能。
传统开发模式:js更改dom,往往无法做到精准更新节点。这里做个假设,我们可以通过缓存dom节点的方式,通过对比上一次和当前dom节点的局部更新dom,但问题是原生的dom拥有太多的属性,这样对比将产生很大的性能开销。但是我相信不是不可以对比。而Vdom则极大的简化了dom节点的属性,并且Vdom作为一个js对象,对比过程要比原生dom节点快的多。
实际Vue和React创建的项目,打包后的项目都有这样一层Vdom对比。而这改变了原来的通过直接更改dom节点的方式更新dom状态的流程。
说Vue创建了一种新的开发模式:
1,原来开发需要手动更新dom现在框架底层封装好了
2,原来开发没有所谓的mvvm结构,现在直接就是了
3,原来开发组件化很麻烦实现,现在可以直接用了
4,原来开发实现模板化也不方面,现在直接是模板化开发方式
理解了这个之后,分析源码的意义可以明确了:在于搞清楚技术实现细节,以便于更好的使用它。
搞清楚框架触发更新的流程,触发的起点过程和结果。
搞清楚模板化是怎么工作的,mvvm怎么实现的,组件化是怎么达成的。
我站在山顶看风景!下面是我的家乡!