• Гигабайты ценной информации. Присоединяйся.
    У нас действительно всё бесплатно, включая ChatGPT/DALLE/VISION)

[HTML academy] Профессиональный онлайн‑курс JavaScript, уровень 2 [27 июля — 30 сентября 2020]

serafim

Житель Разулы
Команда форума
Разула в сердце
Регистрация
25 Апр 2016
Сообщения
78.845
Реакции
128.177
Ra
242.629
[HTML academy] Профессиональный онлайн‑курс JavaScript, уровень 2 [27 июля — 30 сентября 2020]


На этом курсе вы научитесь делать настоящие проекты, такие же по уровню сложности, как в индустрии. И будете делать их правильно, чтобы после обучения выдавать результат высокого уровня, за который компании готовы платить.

Что будет доступно в складчине:
  • Исходники личных и учебного проектов Четкое тз по выполнению проектов Доп.материалы для обучения Задание и методичка к каждой лекции Репозиторий интенсива Чат интенсива в телеграм Все лекции интенсива в лучшем качестве
Первая неделя

Раздел 1
ECMAScript

Рассмотрим схему работы на интенсиве и узнаем, какие инструменты нам понадобятся. Познакомимся с последними версиями стандарта ECMAScript, разберём какие проблемы он решает и чем отличается от ECMAScript 5.

Организационные вопросы.
  • Обзор проектов. Схема работы на интенсиве.
Новые возможности ECMAScript.
  • Область видимости. Операторы let и const. Строки-шаблоны. Стрелочные функции. Параметры функций по умолчанию. Деструктуризация.
Практика
  • Создание репозитория, форк, клонирование. Знакомство с проектом.
Раздел 2
Модули и инфраструктура проектов

Познакомимся с понятием модульности и рассмотрим, как устроены модули в последних версиях стандарта ECMAScript. Разберёмся со сборщиками модулей: зачем они нужны, как они работают и как их подключить в проект. А так же узнаем, что такое npm-пакеты. Научимся их устанавливать и управлять ими.

Модули.
  • Как работают модули в ES20xx. Циклические зависимости.
Структура JavaScript-проекта.
  • node.js, файл package.json, package-lock.json. Управление проектом, npm. npm-сценарии. Обновление версий пакетов. Установка зависимостей. Сборка приложения при помощи webpack. Карты кода (source map).
Практика
  • Настройка инфраструктуры для работы на интенсиве. Подключение в сборку загрузчика модулей. Разделение проекта на модули.
Вторая неделя

Раздел 3
Структуры данных
Узнаем, зачем нужны структуры данных frontend-разработчику и как их применять в своих проектах.
  • Классические структуры данных. Структуры данных ES2015: Map, Set, Iterable. Возможности ES2015 для работы с массивами и объектами. Оператор spread и rest.
Практика
  • Написание клиент-серверного приложения без сервера.
Раздел 4
Введение в ООП

Познакомимся с объектами в JavaScript. Научимся создавать, копировать и применять объекты для решения практических задач. Поговорим про типизацию и разберёмся с магическим контекстом.

Объекты JavaScript.

  • Функции и объекты. Способы создания объектов. Свойства и методы. Динамические имена свойств. Геттеры и сеттеры. Копирование объектов.
Иммутабельность.

Компонентный подход.
  • Объектно-ориентированное программирование. Какие проблемы решает ООП. Особенности ООП в JavaScript. Классы, типы в JavaScript. Инкапсуляция.
Практика
  • Обновление кода с учётом новых знаний об объектах. Применение объектно-ориентированного подхода.
Третья неделя

Раздел 5
Наследование и полиморфизм
Продолжаем знакомиться с ООП в JavaScript. Разберем полиморфизм и наследование. Попрактикуемся в написании компонентов многоразового использования.

ООП.
  • Полиморфизм. Наследование и цепочка прототипов. Принципы ООП. Абстрактные классы.
Контекст.
  • Контекст. Потеря и привязка контекста (apply, bind, call). Контекст стрелочных функций.
Практика
  • Углубление в ООП. Применение на практике инкапсуляции, наследования и полиморфизма. Рефакторинг модулей.
Раздел 6
Датабиндинг — связывание данных

На этом этапе мы установим связь между компонентом и структурой данных: обновление данных при изменении состояния компонентов.

Датабиндинг.
  • Связывание данных. Паттерны «Посредник» и «Наблюдатель». Функции обратного вызова (колбэки).
Практика
  • Установка одностороннего связывания данных — от компонента к данным. Знакомство с библиотеками chart.js, flatpikr, moment.
Четвёртая неделя

Раздел 7
Связывание данных. Продолжение
Затем установим обратную связь: обновление компонентов при изменении данных.

Датабиндинг.

  • Слабое связывание. Паттерны «Слушатель». Виды MV*.
Практика
  • Связывание данных в обратную сторону — от данных к компонентам. Применение двустороннего связывания данных.
Пятая неделя

Раздел 8
Работа с сетью
Узнаем как работает протокол HTTP, что такое REST и REST API. Разберёмся с объектом Promise и узнаем, как он помогает отправлять и обрабатывать HTTP-запросы. Узнаем, как проектировать интерфейсы, в которых есть асинхронный код так, чтобы пользователю было удобно.

Протокол HTTP.

REST.

Промисы.

Fetch API.

Практика
  • Получение данных для отрисовки приложения с внешнего сервера. Отправка данных на внешний сервер.
Раздел 9
Offline

Узнаем, есть ли жизнь без интернета.
  • Cache. Local Storage. Web Worker. Service Worker.
Практика
  • Знакомство с практиками, обеспечивающими работу приложения, в случае, если доступ к сети пропал.
Продажник:

Войти или Зарегистрироваться чтобы увидеть скрытый текст.

Скачать:
 
Сверху