Углубленное изучение серверный JavaScript — Node.js, socket.io
Описание
Аннотация
Node или Node.js — программная платформа, основанная на движке V8 (транслирующем JavaScript в машинный код), превращающая JavaScript из узкоспециализированного языка в язык общего назначения.
Node.js добавляет возможность JavaScript взаимодействовать с устройствами ввода-вывода через свой API (написанный на C++), подключать другие внешние библиотеки, написанные на разных языках, обеспечивая вызовы к ним из JavaScript-кода.
Node.js применяется преимущественно на сервере, выполняя роль веб-сервера, но есть возможность разрабатывать на Node.js и десктопные оконные приложения (при помощи NW.js, AppJS или Electron для Linux, Windows и Mac OS) и даже программировать микроконтроллеры (например, tessel и espruino).
В основе Node.js лежит событийно-ориентированное и асинхронное (или реактивное) программирование с неблокирующим вводом/выводом.
Цель
- Создание веб сервера на технологии socket.io
- Создание веб приложений и программирование на Node.js
Предварительная подготовка
- Знание HTML и CSS
- Основы JavaScript
Программа курса
- Изучаем Node.JS:
- Введение в Node.JS
- Что такое Node.JS? Почему Node.JS?
- Установка и запуск
- Исходники и документация
- Модули для Node.JS
- Приёмы работы с модулями
- Введение в NPM — менеджер пакетов для Node.JS
- Структура пакета NPM
- Глобальные модули
- Модуль util и наследование
- Модуль console
- Наследование от ошибок Error
- События, EventEmitter и утечки памяти
- Node.JS как веб-сервер
- Эхо-сервер на Node.JS
- Документация к модулю http
- Разработка, supervisor
- Отладка скриптов под Node.JS
- Логирование, модули debug и winston
- Введение в асинхронную разработку
- Событийный цикл, библиотека libUV
- Таймеры, process.nextTick, ref/unref
- Работа с файлами, модуль fs
- Безопасный путь к файлу в fs и path
- Потоки данных в Node.JS, fs.ReadStream
- Writable поток ответа res, метод pipe
- Чат через long-polling, чтение POST
- Домены, «асинхронный try..catch»
- Чтение параметров из командной строки и окружения
- Создаём приложение:
- Создаём костяк сайта / Express: основы и Middleware
- Улучшаем костяк сайта / Логгер, конфигурация, шаблонка для HTML
- Улучшаем шаблонизацию / EJS: layout, block, partials
- Начинаем работать с базой / Основы MongoDB, native driver
- Создаём модель для пользователя / Основы Mongoose
- Делаем скрипт для создания тестовой базы / Async, организация кода [обновлено]
- Веб-сервисы, работа с ошибками / Express, Mongoose
- Сессии, отслеживание посетителей /Express/
- Авторизация /Express, Mongoose, Async, EJS/
- COMET: обзор подходов / WS.JS, Sock.JS, Socket.IO
- Чат на Express и Socket.IO
- Опции Socket.IO и автореконнект
- Socket.IO + Express + авторизация
- Дополнительно:
- Установка MongoDB для Windows, пример работы
Расписание
Время проведения курса пока не определено, отправьте нам заявку, пожалуйста.
Возможно, мы предложим пройти курс в дистанционном режиме или организуем выездной курс, если у Вас группа.