【imooc-608】Vue3源码解析,打造自己的Vue3框架,领悟尤大思维精髓 - 带源码课件10.27GB
第01章课程导读50.31MB
1-1课程导读.mp450.31MB
第02章框架设计前瞻-框架设计中的一些基本概念574.66MB
2-1前言.mp411.43MB
2-2编程范式之命令式编程.mp439.96MB
2-3编程范式之声明式编程.mp426.23MB
2-4命令式VS声明式.mp442.7MB
2-5企业应用的开发与设计原则.mp442.79MB
2-6为什么说框架的设计过程其实是一个不断取舍的过程?.mp435.8MB
2-7.vue中的html是真实的html吗?.mp430.49MB
2-8什么是运行时?.mp4101.48MB
2-9什么是编译时?.mp444.42MB
2-10运行时+编译时.mp4102.2MB
2-11什么是副作用.mp423.92MB
2-12Vue3框架设计概述.mp428.72MB
2-13扩展:所谓良好的`TypeScript`支持,是如何提供.mp438.55MB
2-14总结.mp45.97MB
第03章Vue3源码结构-搭建框架雏形509.7MB
3-1前言.mp48.5MB
3-2探索源码设计:Vue3源码设计大解析.mp471.58MB
3-3创建测试实例:在Vue源码中运行测试实例.mp453.37MB
3-4跟踪解析运行行为:为vue开启SourceMap.mp457.58MB
3-5授人以鱼:如何针对源码进行debugger.mp431.86MB
3-6 授人以渔:如何阅读源码.mp443.18MB
3-7开始搭建自己的框架:创建vue-next-mini.mp440.52MB
3-8为框架进行配置:导入ts.mp447.2MB
3-9引入代码格式化工具:prettier让你的代码结构更加规范.mp435.79MB
3-10模块打包器:rollup.mp475.99MB
3-11初见框架雏形:配置路径映射.mp435.43MB
3-12总结.mp48.68MB
第04章响应系统-响应系统的核心设计原则378.01MB
4-1前言.mp411.97MB
4-2JS的程序性.mp433.53MB
4-3如何让你的程序变得更加“聪明”?.mp433.43MB
4-4vue2的响应性核心API:Object.definePr.mp449.02MB
4-5Object.defineProperty在设计层的缺陷.mp455.26MB
4-6vue3的响应性核心API:proxy.mp490.31MB
4-7proxy的最佳拍档:Reflect—拦截js.mp493.11MB
4-8总结.mp411.39MB
第05章响应系统-初见reactivity模块725.13MB
5-1前言.mp411.56MB
5-2源码阅读:reactive的响应性,跟踪Vue3源码实现逻.mp4128.74MB
5-3源码阅读:reactive的响应性,跟踪Vue3源码实现逻.mp499.25MB
5-4框架实现:构建reactive函数,获取proxy实例.mp475.29MB
5-5框架实现:什么是WeakMap?它和Map有什么区别?.mp457.97MB
5-6框架实现:createGetter&&cr.mp454.44MB
5-7热更新的开发时:提升开发体验.mp418.41MB
5-8框架实现:构建effect函数,生成ReactiveEff.mp440.41MB
5-9框架实现:track&&trigger.mp434.91MB
5-10框架实现:构建track依赖收集函数.mp434.6MB
5-11 框架实现:构建 trigger 触发依赖.mp422.97MB
5-12总结:单一依赖的reactive.mp423.89MB
5-13功能升级:响应数据对应多个effect.mp428.99MB
5-14框架实现:构建Dep模块,处理一对多的依赖关系.mp451.91MB
5-15reactive函数的局限性.mp433.07MB
5-16总结.mp48.73MB
第06章响应系统-ref的响应性385.51MB
6-1前言.mp46.43MB
6-2源码阅读:ref复杂数据类型的响应性(1).mp493.48MB
6-3源码阅读:ref复杂数据类型的响应性(2).mp476.56MB
6-4框架实现:ref函数-构建复杂数据类型的响应性.mp467.36MB
6-5总结:ref复杂数据类型的响应性.mp412.15MB
6-6源码阅读:ref简单数据类型的响应性.mp465.48MB
6-7框架实现:ref函数-构建简单数据类型的响应性.mp432.32MB
6-8总结:ref简单数据类型响应性.mp416.25MB
6-9总结.mp415.49MB
第07章响应系统 - watch && computed1GB
7-1开篇.mp46.74MB
7-2源码阅读:computed的响应性,跟踪Vue3源码实现逻.mp499.44MB
7-3源码阅读:computed的响应性,跟踪Vue3源码实现逻.mp4101.6MB
7-4框架实现:构建ComputedRefImpl,读取计算属性.mp461.41MB
7-5框架实现:computed的响应性:初见调度器,处理脏的状.mp458.69MB
7-6框架实现:computed的缓存性.mp4148.29MB
7-7总结:computed计算属性.mp48.01MB
7-8源码阅读:响应性的数据监听器watch,跟踪源码实现逻辑(.mp4119.74MB
7-9源码阅读:响应性的数据监听器watch,跟踪源码实现逻辑(.mp499.75MB
7-10框架实现:深入scheduler调度系统实现机制.mp4149.16MB
7-11框架实现:初步实现watch数据监听器.mp4111.77MB
7-12问题分析:watch下的依赖收集原则.mp430.61MB
7-13框架实现:完成watch数据监听器的依赖收集.mp420.62MB
7-15总结.mp411.83MB
第08章runtime运行时-运行时核心设计原则253.96MB
8-1前言.mp418.42MB
8-2HTMLDOM节点树与虚拟DOM树.mp459.2MB
8-3挂载与更新.mp475.67MB
8-4h函数与render函数.mp434.17MB
8-5运行时核心设计原则.mp463.12MB
8-6总结.mp43.39MB
第09章runtime运行时-构建h函数,生成Vnode642.48MB
9-1前言.mp410.71MB
9-2阅读源码:初见h函数,跟踪Vue3源码实现基础逻辑(1).mp464.66MB
9-3阅读源码:初见h函数,跟踪Vue3源码实现基础逻辑(2).mp492.1MB
9-4框架实现:构建h函数,处理ELEMENT+TEXT_CHI.mp4112.18MB
9-5源码阅读:h函数,跟踪ELEMENT+ARRAY_CHIL.mp473.41MB
9-6框架实现:构建h函数,处理ELEMENT+ARRAY_CH.mp426.52MB
9-7源码阅读:h函数,组件的本质与对应的VNode.mp462.05MB
9-8框架实现:处理组件的VNode.mp435.46MB
9-9源码阅读:h函数,跟踪Text、Comment、Fragm.mp449.07MB
9-10框架实现:实现剩余场景Text、Comment、Frag.mp418.38MB
9-11源码阅读:对class和style的增强处理.mp451.32MB
9-12框架实现:完成虚拟节点下的class和style的增强.mp432.95MB
9-13总结.mp413.67MB
第10章runtime运行时-构建renderer渲染器1.27GB
10-1前言.mp414.63MB
10-2源码阅读:初见render函数,ELEMENT节点的挂载.mp4130.66MB
10-3框架实现:构建renderer基本架构.mp498.39MB
10-4框架实现:基于renderer完成ELEMENT节点挂载.mp448.98MB
10-5框架实现:合并渲染架构,得到可用的render函数.mp454.45MB
10-6源码阅读:渲染更新,ELEMENT节点的更新操作.mp47.94MB
10-7框架实现:渲染更新,ELEMENT节点的更新实现.mp4103.25MB
10-8源码阅读:新旧节点不同元素时,ELEMENT节点的更新操.mp443.97MB
10-9框架实现:处理新旧节点不同元素时,ELEMENT节点的更.mp430.4MB
10-10框架实现:删除元素,ELEMENT节点的卸载操作.mp418.69MB
10-11源码阅读:class属性和其他属性的区分挂载.mp486.04MB
10-12深入属性挂载:HTMLAttributes和DOMPr.mp471.96MB
10-13框架实现:区分处理ELEMENT节点的各种属性挂载.mp432.38MB
10-14源码阅读:ELEMENT节点下,style属性的挂载和.mp475.13MB
10-15框架实现:ELEMENT节点下,style属性的挂载和.mp435.74MB
10-16源码阅读:ELEMENT节点下,事件的挂载和更新.mp4127.96MB
10-17深入事件更新:vueeventinvokers.mp457.45MB
10-18框架实现:ELEMENT节点下,事件的挂载和更新.mp438.77MB
10-19局部总结:ELEMENT节点的挂载、更新、props打.mp410.16MB
10-20源码阅读:renderer渲染器下,Text节点的挂载.mp440.2MB
10-21框架实现:renderer渲染器下,Text节点的挂载.mp430.6MB
10-22源码阅读:renderer渲染器下,Comment节点.mp416.67MB
10-23框架实现:renderer渲染器下,Comment节点.mp418.58MB
10-24源码阅读:renderer渲染器下,Fragment节.mp444.09MB
10-25框架实现:renderer渲染器下,Fragment节.mp446.71MB
10-26总结.mp418.22MB
第11章runtime运行时-组件的设计原理与渲染方案855.63MB
11-1前言.mp412.81MB
11-2源码阅读:无状态基础组件挂载逻辑.mp4101.07MB
11-3源码阅读:无状态基础组件挂载逻辑.mp478.58MB
11-4框架实现:完成无状态基础组件的挂载逻辑.mp476.43MB
11-5源码阅读:无状态基础组件更新逻辑.mp440.88MB
11-6局部总结:无状态组件的挂载、更新、卸载总结.mp412.7MB
11-7源码阅读:有状态的响应性组件挂载逻辑.mp496.19MB
11-8框架实现:有状态的响应性组件挂载逻辑.mp419.82MB
11-9源码阅读:组件生命周期回调处理逻辑.mp4115.52MB
11-10框架实现:组件生命周期回调处理逻辑.mp445.74MB
11-11源码阅读:生命回调钩子中访问响应性数据.mp444.1MB
11-12框架实现:生命回调钩子中访问响应性数据.mp413.34MB
11-13源码阅读:响应性数据改变,触发组件的响应性变化.mp462.86MB
11-14框架实现:响应性数据改变,触发组件的响应性变化.mp421.4MB
11-15源码阅读:compositionAPI,setup函数.mp466.4MB
11-16框架实现:compositionAPI,setup函数.mp429.79MB
11-17总结.mp418MB
第12章runtime运行时-diff算法核心实现1.02GB
12-1前言.mp421.61MB
12-2前置知识:VNode虚拟节点key属性的作用.mp426.7MB
12-3源码阅读:场景一:自前向后的diff对比.mp487.63MB
12-4框架实现:场景一:自前向后的diff对比.mp444.42MB
12-5源码阅读:场景二:自后向前的diff对比.mp441.29MB
12-6框架实现:场景二:自后向前的diff对比.mp416.2MB
12-7源码阅读:场景三:新节点多余旧节点时的diff比对.mp471.05MB
12-8框架实现:场景三:新节点多余旧节点时的diff比对.mp416.51MB
12-9源码阅读:场景四:旧节点多于新节点时的diff比对.mp423.2MB
12-10框架实现:场景四:旧节点多于新节点时的diff比对.mp48.65MB
12-11局部总结:前四种diff场景的总结与乱序场景.mp435.58MB
12-12前置知识:场景五:最长递增子序列.mp470.57MB
12-13源码逻辑:场景五:求解最长递增子序列.mp4202.74MB
12-14源码阅读:场景五:乱序下的diff比对.mp4129.32MB
12-15源码阅读:场景五:乱序下的diff比对.mp4177.88MB
12-16框架实现:场景五:乱序下的diff比对.mp439.45MB
12-17总结.mp433.08MB
第13章compiler编译器-编译时核心设计原则144.59MB
13-1前言.mp446.58MB
13-2模板编译的核心流程.mp418.24MB
13-3抽象语法树-AST.mp432.1MB
13-4AST转化为JavaScriptAST,获取codege.mp440.96MB
13-6总结.mp46.72MB
第14章compiler编译器-构建compile编译器1.64GB
14-1前言.mp49.18MB
14-2扩展知识:JavaScript与有限自动状态机.mp479.43MB
14-3扩展知识:扫描tokens构建AST结构的方案.mp443.39MB
14-4源码阅读:编译器第一步:依据模板,生成AST抽象语法树.mp4269.55MB
14-5框架实现:构建parse方法,生成context实例.mp447.16MB
14-6框架实现:构建有限自动状态机解析模板,扫描token生成.mp4218.53MB
14-7框架实现:生成AST,构建测试.mp430.52MB
14-8扩展知识:AST到JavaScriptAST的转化策略和.mp440.92MB
14-9源码阅读:编译器第二步:转化AST,得到JavaScri.mp4214.97MB
14-10框架实现:转化JavaScriptAST,构建深度优先.mp4111.66MB
14-11框架实现:构建transformXXX方法,转化对应节.mp4121.82MB
14-12框架实现:处理根节点的转化,生成JavaScriptA.mp452.75MB
14-13扩展知识:render函数的生成方案.mp458.19MB
14-14源码阅读:编译器第三步:生成render函数.mp4154.63MB
14-15框架实现:构建CodegenContext上下文对象.mp431.53MB
14-16框架实现:解析JavaScriptAST,拼接rend.mp4158.64MB
14-17框架实现:新建compat模块,把render转化为f.mp426.19MB
14-18总结.mp412.26MB
第15章compiler编译器-深入编辑器处理逻辑(困难)763.1MB
15-1前言.mp49.72MB
15-2响应性数据的编辑器处理:响应性数据的处理逻辑.mp444.02MB
15-3响应性数据的编辑器处理:AST解析逻辑.mp437.55MB
15-4响应性数据的编辑器处理:JavaScriptAST转化逻.mp429.11MB
15-5响应性数据的编辑器处理:render转化逻辑分析.mp417.96MB
15-6响应性数据的编辑器处理:generate生成render.mp444.39MB
15-7响应性数据的编辑器处理:render函数的执行处理.mp437.22MB
15-8多层级模板的编辑器处理:多层级的处理逻辑.mp427.98MB
15-9基于编辑器的指令(v-xx)处理:指令解析的整体逻辑.mp436.73MB
15-10困难-基于编辑器的指令(v-xx)处理:AST解析逻辑.mp4123.89MB
15-11困难-基于编辑器的指令(v-xx)处理:JavaScr.mp4245.51MB
15-12 基于编辑器的指令(v-xx)处理:JavaScript AST ,transform 的转化逻辑.mp423.38MB
15-13基于编辑器的指令(v-xx)处理:生成render函数.mp479.07MB
15-14总结.mp46.57MB
第16章运行时+编译时-合并vue处理逻辑164.66MB
16-2基于render渲染的createApp的构建逻辑.mp4107.94MB
16-3基于template渲染的createApp的构建逻辑.mp443.42MB
16-4总结.mp413.3MB
第17章课程总结11.33MB
17-1总结.mp411.33MB
资料代码.7z100.62KB
网站声明:
1. 该网盘资源的安全性和完整性需要您自行判断,点击下载地址直接跳转到网盘官方页面。本站链接通过程序自动收集互联网公开分享链接,本站不储存、复制、传播任何网盘文件,也不提供下载服务。
2. 本站遵守相关法律法规,坚决杜绝一切违规不良信息,如您发现任何涉嫌违规的网盘信息,请立即向网盘官方网站举报,并及时反馈给我们进行屏蔽删除。
3. 本站高度重视知识产权保护和个人隐私保护,如有网盘链接侵犯您的合法权益,请立即向网盘官方网站举报,并参见本站《版权说明》提供书面材料联系我们屏蔽删改。
1. 该网盘资源的安全性和完整性需要您自行判断,点击下载地址直接跳转到网盘官方页面。本站链接通过程序自动收集互联网公开分享链接,本站不储存、复制、传播任何网盘文件,也不提供下载服务。
2. 本站遵守相关法律法规,坚决杜绝一切违规不良信息,如您发现任何涉嫌违规的网盘信息,请立即向网盘官方网站举报,并及时反馈给我们进行屏蔽删除。
3. 本站高度重视知识产权保护和个人隐私保护,如有网盘链接侵犯您的合法权益,请立即向网盘官方网站举报,并参见本站《版权说明》提供书面材料联系我们屏蔽删改。