Продолжительность
3 ч 21 мин 29 сек
Количество уроков
18 Видео
Дата добавления
22.09.2023
Дата обновления
14.11.2023
Почему это называется виртуальной машиной? Как JavaScript переводится в машинный код? И почему мне это важно? Что делает код мономорфным или полиморфным, и почему разница в скорости может достигать 100 раз? Что означает деоптимизация и как она происходит? Что такое 'holey arrays', и почему мне это важно? Почему `==` может быть в 15 раз медленнее, чем `===` и многое другое.
На этом семинаре мы глубоко погрузимся в то, как работает виртуальная машина JavaScript и что происходит под капотом. Как мне отлаживать производительность моего приложения и получать представление о том, что делает виртуальная машина? Все это полезно знать, когда ваш код выполняется в 'горячем' пути, и вы хотите достичь максимальной производительности, или просто интересно знать, как все работает под капотом.
- Сформируйте модель работы физических машин (ЦП)
- Узнайте, какие функции JavaScript создаются с использованием виртуальной машины (ВМ)
- Понимайте соглашения о вызове функций, встраивание и деоптимизацию
- Используйте макет объектов, полиморфизм и встроенные кэши
10:00AM - CPUs - Understanding the Physical Machine
11:00AM- VMs - Arrays, Objects, functions, prototype chains
12:00PM - Lunch
1:00PM - DeoptExplorer - collecting data from the VM
1:30PM - Deopt - Calling Conventions & Inlining
2:30PM - Megamorhpism & Inline Cache - Object properties
3:30PM - Holey Arrays - Protytype chains resolutions
4:00PM
== vs === and `valueOf()`