课程简介:
本课程包括三个模块,分别是 JavaScript 设计思想篇、V8 编译流水线篇、事件循环和垃圾回收篇。
JavaScript 设计思想篇,关注 JavaScript 的设计思想,讨论它背后的核心特性,以及 V8 是是怎么实现这些特性的。
V8 编译流水线篇,带你分析 V8 的编译流水线所涉及到的具体知识点,同时也会穿插讲解一些内存分配相关的内容,因为函数调用、变量声明、参数传递或者函数返回数值都涉及到了内存分配。
事件循环和垃圾回收篇,深入到 V8 的心脏事件循环系统中,学习 V8 是如何实现 JavaScript 单线程执行的。同时,关注垃圾回收问题,打通 V8 分配内存和回收数据的整个链路,掌握系统排查问题的方法。
课程目录:
├──01丨宏观视角 (2讲)
| ├──00丨开篇词丨如何学习谷歌高性能JavaScript引擎V8?.html 7.19M
| ├──00丨开篇词丨如何学习谷歌高性能JavaScript引擎V8?.m4a 6.99M
| ├──00丨开篇词丨如何学习谷歌高性能JavaScript引擎V8?.pdf 5.72M
| ├──01丨V8是如何执行一段JavaScript代码的?.html 3.67M
| ├──01丨V8是如何执行一段JavaScript代码的?.m4a 12.78M
| └──01丨V8是如何执行一段JavaScript代码的?.pdf 2.50M
├──02丨JavaScript设计思想篇 (7讲)
| ├──02丨函数即对象:一篇文章彻底搞懂JavaScript的函数特点.html 3.19M
| ├──02丨函数即对象:一篇文章彻底搞懂JavaScript的函数特点.m4a 9.95M
| ├──02丨函数即对象:一篇文章彻底搞懂JavaScript的函数特点.pdf 1.98M
| ├──03丨快属性和慢属性:V8采用了哪些策略提升了对象属性的访问速度?.html 5.15M
| ├──03丨快属性和慢属性:V8采用了哪些策略提升了对象属性的访问速度?.m4a 9.71M
| ├──03丨快属性和慢属性:V8采用了哪些策略提升了对象属性的访问速度?.pdf 3.30M
| ├──04丨函数表达式:涉及大量概念,函数表达式到底该怎么学?.html 4.01M
| ├──04丨函数表达式:涉及大量概念,函数表达式到底该怎么学?.m4a 11.35M
| ├──04丨函数表达式:涉及大量概念,函数表达式到底该怎么学?.pdf 2.55M
| ├──05丨原型链V8是如何实现对象继承的?.html 3.83M
| ├──05丨原型链V8是如何实现对象继承的?.m4a 12.43M
| ├──05丨原型链V8是如何实现对象继承的?.pdf 2.72M
| ├──06丨作用域链:V8是如何查找变量的?.html 3.92M
| ├──06丨作用域链:V8是如何查找变量的?.m4a 8.72M
| ├──06丨作用域链:V8是如何查找变量的?.pdf 2.39M
| ├──07丨类型转换:V8是怎么实现1+“2”的?.html 3.40M
| ├──07丨类型转换:V8是怎么实现1+“2”的?.m4a 8.98M
| ├──07丨类型转换:V8是怎么实现1+“2”的?.pdf 1.89M
| ├──08丨答疑:如何构建和使用V8的调试工具d8?.html 4.21M
| ├──08丨答疑:如何构建和使用V8的调试工具d8?.m4a 14.32M
| └──08丨答疑:如何构建和使用V8的调试工具d8?.pdf 2.52M
├──03丨V8编译流水线 (8讲)
| ├──09丨运行时环境:运行JavaScript代码的基石.html 3.09M
| ├──09丨运行时环境:运行JavaScript代码的基石.m4a 10.88M
| ├──09丨运行时环境:运行JavaScript代码的基石.pdf 1.92M
| ├──10丨机器代码:二进制机器码究竟是如何被CPU执行的?.html 4.14M
| ├──10丨机器代码:二进制机器码究竟是如何被CPU执行的?.m4a 13.16M
| ├──10丨机器代码:二进制机器码究竟是如何被CPU执行的?.pdf 2.54M
| ├──11丨堆和栈:函数调用是如何影响到内存布局的?.html 4.29M
| ├──11丨堆和栈:函数调用是如何影响到内存布局的?.m4a 12.58M
| ├──11丨堆和栈:函数调用是如何影响到内存布局的?.pdf 3.04M
| ├──12丨延迟解析:V8是如何实现闭包的?.html 2.90M
| ├──12丨延迟解析:V8是如何实现闭包的?.m4a 9.96M
| ├──12丨延迟解析:V8是如何实现闭包的?.pdf 1.88M
| ├──13丨字节码(一):V8为什么又重新引入字节码?.html 4.23M
| ├──13丨字节码(一):V8为什么又重新引入字节码?.m4a 9.46M
| ├──13丨字节码(一):V8为什么又重新引入字节码?.pdf 2.80M
| ├──14|字节码(二):解释器是如何解释执行字节码的?.html 3.94M
| ├──14|字节码(二):解释器是如何解释执行字节码的?.m4a 11.60M
| ├──14|字节码(二):解释器是如何解释执行字节码的?.pdf 2.58M
| ├──15丨隐藏类:如何在内存中快速查找对象属性?.html 3.57M
| ├──15丨隐藏类:如何在内存中快速查找对象属性?.m4a 12.71M
| ├──15丨隐藏类:如何在内存中快速查找对象属性?.pdf 2.14M
| ├──16丨答疑:V8是怎么通过内联缓存来提升函数执行效率的?.html 3.51M
| ├──16丨答疑:V8是怎么通过内联缓存来提升函数执行效率的?.m4a 11.19M
| └──16丨答疑:V8是怎么通过内联缓存来提升函数执行效率的?.pdf 2.19M
├──04丨事件循环和垃圾回收 (6讲)
| ├──17丨消息队列:V8是怎么实现回调函数的?.html 3.35M
| ├──17丨消息队列:V8是怎么实现回调函数的?.m4a 8.45M
| ├──17丨消息队列:V8是怎么实现回调函数的?.pdf 1.81M
| ├──18丨异步编程(一):V8是如何实现微任务的?.html 7.16M
| ├──18丨异步编程(一):V8是如何实现微任务的?.m4a 11.84M
| ├──18丨异步编程(一):V8是如何实现微任务的?.pdf 5.32M
| ├──19|异步编程(二):V8是如何实现async-await的?.html 3.50M
| ├──19|异步编程(二):V8是如何实现async-await的?.m4a 10.96M
| ├──19|异步编程(二):V8是如何实现async-await的?.pdf 2.19M
| ├──20丨垃圾回收(一):V8的两个垃圾回收器是如何工作的?.html 2.75M
| ├──20丨垃圾回收(一):V8的两个垃圾回收器是如何工作的?.m4a 8.60M
| ├──20丨垃圾回收(一):V8的两个垃圾回收器是如何工作的?.pdf 1.82M
| ├──21丨垃圾回收(二):V8是如何优化垃圾回收器执行效率的?.html 2.93M
| ├──21丨垃圾回收(二):V8是如何优化垃圾回收器执行效率的?.m4a 10.08M
| ├──21丨垃圾回收(二):V8是如何优化垃圾回收器执行效率的?.pdf 1.96M
| ├──22|答疑:几种常见内存问题的解决策略.html 3.26M
| ├──22|答疑:几种常见内存问题的解决策略.m4a 9.17M
| └──22|答疑:几种常见内存问题的解决策略.pdf 2.26M
└──05丨结束语 (1讲)
| ├──结束语丨我的前端学习踩坑史.html 2.33M
| ├──结束语丨我的前端学习踩坑史.m4a 4.31M
| └──结束语丨我的前端学习踩坑史.pdf 1.45M
常见问题FAQ
- 视频课程的格式是什么
- 视频不加密,网盘在线学习,课程免费更新,持续更新
- 怎么发货?
- 有些资源没更新完结怎么办
- 有问题不懂想咨询怎么办