открытого
курса
открытого
Привет!
Это страница
по JavaScript
от фронтенд-инженера AvitoTech
курса
Этот курс погружает во фронтенд-разработку и её базовые технологии:
Язык программирования JavaScript
Язык разметки HTML
Язык описания внешнего вида страниц CSS
Программа курса
2 лекции
Устройство современного веба и введение в JavaScript
Модуль 1
1. General. Как устроен современный веб
- История Интернета
- Что такое Веб
- Как работает Веб
- Устройство браузеров
- Как веб-страница появляется на экране компьютера
2. Введение в JavaScript
- Введение в JavaScript
- JavaScript, JScript, EcmaScript
- Среда исполнения
- Node.js
- Первый скрипт на JavaScript
- Интерпретирование
6 лекций
Работа с данными в JavaScript
Модуль 2
3. Работа с данными в JavaScript. Часть 3
- «Проблемные» числа в JS
- ​​Продвинутая математика или IEEE 754 и хранение чисел в памяти компьютера
2. Работа с данными в JavaScript. Часть 2
- Стек и куча
- Oddball, иммутабельные примитивы
- Схематичное устройство памяти
- Размер памяти для данных разного типа
1. Работа с данными в JavaScript. Часть 1
- Объявление переменных и инициализация
- Типы данных в JS
4. Работа с данными в JavaScript. Часть 4
- BigInt
5. Работа с данными в JavaScript. Часть 5
- Объектная парадигма, классы-обертки над примитивами
- ​​Области видимости
6. Работа с данными в JavaScript. Часть 6
- Поднятие переменных
- ​​Переменные var, let, const
- ​​Приведение типов данных в JavaScript. Динамическая и слабая типизация
3 лекции
Контекст исполнения. Ключевое слово this
Модуль 3
3. Контекст исполнения. Ключевое слово this. Часть 3
- Инициализация ThisArgument
- ​​Bind, call и apply
2. Контекст исполнения. Ключевое слово this. Часть 2
- Execution Context
- Операция NewDeclarativeEnvironment
- Операция NewObjectEnvironment
- Операция NewFunctionEnvironment
- Операция NewGlobalEnvironment
- Инициализация глобального контекста исполнения
- Инициализация функционального контекста исполнения
1. Контекст исполнения. Ключевое слово this. Часть 1
- Виды контекста исполнения
- EnvironmentRecord
- Function Environment Record
- Global Environment Record
2 лекции
ООП и прототипное наследование в JavaScript
Модуль 4
2. ООП и прототипное наследование в JavaScript. Часть 2
- Object.defineProperty и дескрипторы свойств
- Object.create
- Monkey Patching
- Методы и [[HomeObject]]
1. ООП и прототипное наследование в JavaScript. Часть 1
- Прототипное наследование
- Методы Object.setPrototypeOf и Object.getPrototypeOf
- Function Environment Record
- Global Environment Record
2 лекции
Инструменты конструирования объектов
Модуль 5
2. Инструменты конструирования объектов. Часть 2. Фабрики объектов
- Классы
1. Инструменты конструирования объектов. Часть 1. Фабрики объектов
- Фабрика объектов
- Функции-конструкторы
Вы научитесь отвечать на два главных вопроса: как это работает и почему именно так
А ещё получите фундаментальную базу знаний и поймёте, как:
Избегать подводных камней в кодинге
Использовать механизмы работы JavaScript
Смотреть курс
МОДУЛЬ 1. Устройство современного веба и введение в JavaScript
1. General. Как устроен современный веб
Темы урока:
- Что такое веб и как он устроен
- Как происходит обмен данными в вебе
- Что такое браузеры, зачем они нужны и как устроены
- Процесс работы браузера от получения до отрисовки страницы
2. Введение в JavaScript
Теория:
- Стек и куча в памяти программы
- Хранение данных в движке V8
- Объект примитивных значений Oddball и зачем он нужен
Практика:
Написание и запуск своего первого скрипта в разных средах исполнения
Определение отличий между средами
МОДУЛЬ 2. Работа с данными в JavaScript
Теория:
- Стек и куча в памяти программы
- Хранение данных в движке V8
- Объект примитивных значений Oddball и зачем он нужен
2. Работа с данными в JavaScript. Часть 2
Теория:
- Типы данных и как они влияют на сами данные
- Переменные. Объявление и инициализация переменных
- Типы данных в JavaScript
- Принцип работы оператора typeof
1. Работа с данными в JavaScript. Часть 1
Практика:
Приведение числа из обычного представления в компьютерное и обратно
Теория:
- Стандарт IEEE 754 и хранение чисел в памяти программы
- Кодирование чисел в памяти программы
- Специальные числа в IEEE 754 и их реализация в JavaScript
3. Работа с данными в JavaScript. Часть 3
Теория:
- Безопасные числа, откуда они взялись и почему так называются
- Тип данных BigInt и какие числа он описывает
- Основные принципы работы с данными типа BigInt
4. Работа с данными в JavaScript. Часть 4
Теория:
- Объектные обёртки над данными в JavaScript и их предназначение
- Область видимости данных в программе и её типы в JavaScript
- LexicalEnvironment — концепция лексического окружения, её необходимость в ECMAScript, состав и реализация в JavaScript
- Замыкание: откуда оно появляется и как связано со статической областью видимости
5. Работа с данными в JavaScript. Часть 5
Теория:
- Hoisting (поднятие): принцип работы и важность
- Способы объявления переменных: var, let и const, и их отличия
- Процессы приведения типов данных
- Динамическая и слабая типизации и в чём они проявляются
6. Работа с данными в JavaScript. Часть 6
МОДУЛЬ 3. Контекст исполнения. Ключевое слово this
Теория:
- Контекст исполнения: как устроен и из чего состоит
- Алгоритмы создания различных записей среды: NewDeclarativeEnvironment, NewObjectEnvironment, NewFunctionEnvironment, NewGlobalEnvironment
- VaribleEnvironment и LexicalEnvironment, а также данные, которые в них попадают
- this — что это, откуда берётся и каким значением инициализируется
2. Контекст исполнения. Ключевое слово this. Часть 2
Теория:
- Контекст исполнения и его связь с лексическим окружением
- Виды контекстов исполнения и их отличия
- КонцепцияEnvironmentRecord, назначение и типы
- Структура Declarative EnvironmentRecord, Objective EnvironmentRecord, Function EnvironmentRecord и Global EnvironmentRecord
1. Контекст исполнения. Ключевое слово this. Часть 1
Теория:
- ThisArgument — что это и какое значение туда попадает в зависимости от контекста исполнения
- Методы bind, call, apply для ручного изменения ThisArgument
- Ключевую особенность стрелочных функций в разрезе привязки ThisArgument
3. Контекст исполнения. Ключевое слово this. Часть 3
МОДУЛЬ 4. ООП и прототипное наследование в JavaScript
Теория:
- Дескриптор свойства объектаамена прототипа объекта с помощью Object.create()
- Антипаттерн Monkey patching и подводные камни
Теория:
- Парадигма ООП
- Прототип объекта и реализация парадигмы ООП в JavaScript
- Отличиеполей __proto__ и .prototype
- Цепочка наследования объектов: как устроена и когда заканчивается
1. ООП и прототипное наследование в JavaScript. Часть 1
2. ООП и прототипное наследование в JavaScript. Часть 2
МОДУЛЬ 5. Инструменты конструирования объектов
Теория:
- Классы в JavaScript
- Принцип работы классов
- Типы классов и их особенности в JavaScript
- Наследование классов
Теория:
- Способы конструирования объектов
- Функции-конструкторы: как они порождают объекты
- Механизм работы оператора new при использовании совместно с функциями-конструкторами
1. Инструменты конструирования объектов. Часть 1
2. Инструменты конструирования объектов. Часть 2
Спикер курса
Василий Новиков
фронтенд-инженер, Авито
Профильное образование. Программирую с 8 класса школы и уже более 6 лет во фронтенд разработке. Делал всякие классные штуки от почтовых клиентов до больших интернет-банков. Сделал несколько успешных курсов по веб разработке в универе для студентов. Сейчас занимаюсь рекламными продуктами в Авито.
FAQ