【Vue原理】Vue源码阅读总结大会 - 终

写文章不容易,点个赞呗兄弟

专一 Vue 源码分享,文章分为白话版和 源码版,白话版助于理解工做原理,源码版助于了解内部详情,让咱们一块儿学习吧 研究基于 Vue版本 【2.5.17】前端

若是你以为排版难看,请点击 下面连接 或者 拉到 下面关注公众号也能够吧数组

【Vue原理】Vue源码阅读总结大会 - 终 缓存

终于啊终于啊,把 Vue 系列的文章发完了了,如释重负的感jio啊,今天就打算总结下,我这段时间来的历程和收获,本文纯吹水,没有技术含量,各位客官权当娱乐消遣也无谓,来收集个表情包也是能够的框架

公众号


学习源码用时

花了3个多月读源码,花了六个月 写文章,花了九个月发文章dom

耗时以下函数

从 2018 - 9 - 10 开始读源码学习

而后从 2018 - 12 - 5 开始写文章测试

而后 2019 - 6 - 2 写完全部文章3d

而后 2019 - 8 - 19 发完全部文章(也就是今天)调试

公众号

我不是写了就立刻发的,我写完一篇文章以后,要等一段时间以后,再从新审核一遍再发送,这样一来,既能够发现遗漏的错误,也可能能够收获不一样的心得

你觉得这时间算长的了吗??

其实若是只用晚上下班回去的时间写的话......写文章估计得用一年......我不只内容追求简单,可让咱们在之后忘记的时候迅速捡回来,我还要追求排版好看(鳖跟我说难看好不喽,我花了不少心思的哈哈),由于我知道排版难看的文章一秒都不想爱看下去....

而后我为何只用半年呢,我.....很差说....哈哈哈

公众号

不过也算很长了,历时这么长,真的是很是难熬的,在 坚持和 放弃中 摇摆不定,57 篇文章真不是搞笑的啊,差点崩溃了

公众号

幸亏给本身定的奖励,一路撑着我走到如今

好比写完这个系列,我打算给本身买双鞋子.....

咳咳,回到正题

阅读源码不难,难的是深度阅读源码

怎么深度阅读呢,就是本身先提早想好一堆问题,而后去源码中找答案,否则一堆源码摆在面前,是会懵逼的

并且当你发现你要解决一个问题的时候,一般你要先解决七八个问题,而且你会碰到好多盲区知识点,这就是最烦的地方

而写文章是烦上加烦了,我不能囫囵吞枣啊,涉及的盲区知识通通都要去了解,全部附加的问题也通通要解决,由于你要更加详细的了解他的流程 而且 理解,没得办法的啊

公众号

不要以为边看源码而后随便记个笔记就能够了,笔记是应付本身的,你以为你会花多少精力去弄?

反正我以为本身看源码时作的笔记,都没能怎么帮助我写文章,由于偷懒没怎么用心去写

因此更加坚决了我写文章的信念,特么的,写的笔记都不想看,我特么时间不是白花了吗,源码不是白看了吗

公众号


我是怎么读源码

我看源码测试,都是直接看一整个开发版的 Vue 文件,而我看网上不少人都是选择看 Github 上 Vue 功能分类好的文件夹

我我的不太喜欢这样,虽然每一个文件都相比一整个文件简短很多,功能分类好,可是文件太多,会徒增个人疲惫感和厌烦感

我直接看一个整个文件,直接script引入,有一种爬高山的感受。直接征服一万多行的代码,爽得黑文

像上面那种,就是像爬不少座小山,我的感受会累不少,有点烦

并且这样方便我进行调试,相关内容能够看看

【Vue原理】学会调试Vue源码


学习感悟

都不知道写文章有多烦,耗费的时间和精力不是通常的多,比看源码还要多

有时看源码,基本弄懂一个流程就好了,根本不会细致到每个细节

由于要写文章,我必须精细到每个细节,完整走一遍流程,生怕本身写的东西不够严谨(虽然可能也会有瑕疵)

有时明明已经写到吐了,仍是坚持完成目标,这真的是一个恶心的过程啊喂。

公众号

有时真的想一想这样好烦啊,可是,我坚决一个信念

越使我烦躁的东西,越能使我强大

简单的东西,你们都会,凭什么你能更加优秀

难的东西,你们都不会,凭什么你能更加优秀

那我想更加优秀,我就只能从烦入手了,由于烦躁自己就已经帮我筛选过滤了一部分人

那么只要我突破他,那我就能够领先这部分人

由于原本就不是什么很厉害的人,普普统统的程序猴子

你要作的就是去跨越那些烦躁的东西

难的东西你不行,烦躁的东西你还不愿去弄,你竞争个毛啊竞,翻去执牛屎了

公众号

这种烦躁的情绪在 写 compile 的时候特别严重,由于 compile 的源码实在 是太多了,虽然已是看过一遍并作了笔记,才来写的文章,仍然刚到很吃力,很是吃力

compile 的每一篇文章,大概都花几天的才写完的,最长的可能一个星期,而且在发以前还要审核一天以确保正确性,而 compile 有多少篇文章呢?

嗯,有 9 篇,真的是倾注心血的,我以为不会辜负看过的人

你问我为何要分享

一、本身的想法不免有限,确定会有漏掉的错误,别人能够发现指正你

二、分享本身的成果。一我的不停变好的人,也必定可让别人一块儿变好


学习收获

读源码,我的感受有什么好处呢,简单罗列几点把

一、懂得不少项目细节的处理方法,好比对象合并,好比清空数组

二、更加熟悉这个框架,能够解决遇到的奇怪问题而不会干着急(好比以前碰到的 computed 缓存)

三、学到不少新知识点(MessageChannel,shadow dom)

四、可让你从新认识旧知识(宏微任务)

五、怎么写出规范又好维护的代码

六、能够看懂别人打包后的代码(笑哭)

七、项目有些问题的处理思路,好比在 Diff 中有个函数,学会了怎么在两个数组中,匹配是否有相同项

在 Vue 源码分享大会的开始,咱们也有说过,能够看下

【Vue原理】Vue源码阅读总结大会 - 序


最后

我很惧怕本身会写错东西,因此一直很当心翼翼地检查文章,写出一篇文章我不会立刻发表,而是等过一段时间再审查一遍,看是否有不通畅,不正确的地方

只能说个人能力有限吧,仍是会难以免地可能存在的错误

看了文章的童鞋,但愿能对大家有所帮助

有错误的地方,也请敢于指出,我很是但愿有人纠正我哈哈,我会有重酬的!

Vue 系列写完以后,后面可能会更新一些 Vue 的番外篇,好比源码中的一些小功能,可是如今估计会断更一段时间,接着后面会发腾讯前端进阶课程的心得

公众号

公众号
相关文章
相关标签/搜索