Программа курса

В основе программы лежит стек технологий React + Node.js – один из самых популярных и востребованных стеков разработки на сегодняшний день.


1. Введение в HTML
  • Базовые навыки верстки в HTML
  • Использование CSS-фреймворков
2. JavaScript и React
  • Интерактив на странице средствами чистого JavaScript
  • Рендеринг на странице средствами React
  • Интерактив на странице средствами React
3. HTTP, сервер-сайд и примитивный веб-сервер
  • Базовые понятия об использовании протокола HTTP
  • Настойка окружения в системе Linux и создание примитивного веб-сервера на Node.js
  • Понятие роутинга на веб-сервере. Реализация роутинга вручную на низком уровне.
4. Базовое приложение – панель обработки заказов ИМ
  • Разделение маршрутов на статику и API.
    Понятие REST для организации архитектуры API
  • Вызов API с веб-страницы средствами fetch
  • HTML-форма для ввода информации о заказе.
    Обработка POST-запросов от формы на серверной стороне
  • Использование базы данных – установка, настройка и подключение MongoDB
  • Использование MongoDB к приложению для хранения заказов
5. Перевод приложения на использование фреймворков и библиотек
  • Понятие библиотек, фреймворков, open-source кода.
    Использование пакетных менеджеров npm и yarn.
  • Установка фреймворка express и создание приложения на его основе
  • Организация серверного роутинга средствами express
6. Понятие middleware, ограничение доступа и авторизация методом сессий
  • Ограничение доступа к API
  • Ограничение доступа к страницам панели,
    редирект на страницу ввода пароля
  • Форма логина и запись даных в сессию
  • Проверка данных сессии
7. Защита пользовательских паролей
  • Реализация сервиса шифрования и проверки паролей на основе алгоритма bcrypt
  • Проверка пароля в обработчике формы логина
  • Форма регистрации
  • Принудительное завершение сессии
8. Система сборки клиентской части веб-приложения на основе webpack
  • Использование стилевых языков более высокого уровня – SASS, Less
  • Компиляция стилевых языков в CSS средствами webpack
  • Компиляция современной версии языка JavaScript (включая расширение JSX) в версию стандарта ES5 для использования на клиентской стороне