Интенсивный онлайн‑курс по Node.js

Этот онлайн-курс посвящён профессиональной разработке на Node.js (серверная JavaScript). В результате курса вы создадите реальный проект и хорошо разберётесь в Node.js.
Вы будете слушать теорию, писать код, показывать его мне, получать обратную связь и советы, затем двигаться дальше.

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

 

Среда Node

  • Установка Node
  • Первая программа для Node
    • Простейшее приложение Hello, World
    • Параметры командной строки Node
  • LTS-версия и обновление Node
    • Новое семантическое управление версиями Node
    • Обновление Node
  • Node, V8 и ES6
  • Дополнения C/C++

 

Структурные элементы Node.js: глобальные объекты, события и асинхронность

  • Объекты global и process
  • Буферы, типизованные массивы и строки
    • Буферы, JSON, StringDecoder и строки UTF-8
    • Операции с буфером
  • Обратные вызовы и асинхронная обработка событий в Node
    • Очередь событий (цикл)
    • Создание асинхронной функции обратного вызова
    • EventEmitter
    • Цикл событий Node и таймеры
  • Вложенные обратные вызовы и обработка исключений

 

Модули Node.js и менеджер пакетов npm

  • Система модулей Node
    • Как Node находит и загружает модуль
    • Изоляция и модуль VM
  • Знакомство с NPM
  • Создание и публикация собственных модулей Node
    • Создание модуля
    • Упаковка целого каталога
    • Подготовка модуля к публикации
    • Публикация модуля
  • Изучение модулей Node и три важнейших модуля
    • Управление обратными вызовами с использованием Async
    • Commander и волшебство командной строки
    • Модуль Underscore

 

Интерактивная работа с REPL и подробнее о Console

  • Интерактивная работа с REPL и подробнее о Console
  • REPL: первые впечатления и неопределенные выражения
  • Преимущества REPL: понимание внутренних принципов работы JavaScript
  • Многострочный и более сложный код JavaScript
    • Команды REPL
    • Специализированная версия REPL
  • О необходимости консоли
    • Типы консольных сообщений, класс Console и блокировка
    • Форматирование сообщения с использованием util.format() и util.inspect()
    • Расширенная обратная связь с объектом console и таймером

 

Node.js и Веб

  • Модуль HTTP: сервер и клиент
  • Что необходимо учесть при создании статического веб-сервера
  • Использование Apache в качестве прокси-сервера для приложения Node
  • Разбор строки запроса с использованием Query String
  • Преобразование DNS

 

Node.js и локальная система

  • Знакомство с операционной системой
  • Потоки и pipe()
  • Знакомство с модулем File System
    • Отслеживание изменений в файловой системе
    • Чтение и запись файлов
    • Работа с каталогами
    • Файловые потоки
  • Обращение к ресурсам с модулем Path
  • Создание программы командной строки
  • Сжатие / восстановление данных
  • Каналы и модуль ReadLine

 

Сети, сокеты и безопасность

  • Серверы, потоки и сокеты
    • Сокеты и потоки
    • Серверы и сокеты TCP
    • Сокет UDP
  • Защита передаваемых данных
    • Настройка TLS/SSL
    • Работа с HTTPS
    • Модуль Crypto

 

Дочерние процессы

  • child_process.spawn
    • child_process.exec и child_process.execFile
    • child_process.fork

 

Node.js и ES6

  • Строгий режим
  • let и const
  • Стрелочные функции
  • Классы
  • Обещания и Bluebird

 

Комплексная разработка приложений Node.js

  • Express фреймворк для приложений Node
    • Знакомство с Express. Первые шаги
    • Контроль версий
    • Обеспечение качества. QA
    • Автоматизация с помощью Grunt
    • Объекты запроса и ответа
    • Визуализация контента
    • Обработка форм
    • Предоставление API
    • Шаблонизация с помощью Handlebars
    • Шаблонизация с помощью Jade
    • Cookie-файлы и сеансы
    • Промежуточное ПО
    • Отправка электронной почты
    • Маршрутизация
    • API REST и JSON
    • Статический контент
    • Реализация MVC в Express
    • Безопасность
    • Интеграция со сторонними API
  • Системы управления баз данных MongoDB и Redis
    • MongoDB
    • Redis
  • AngularJS и другие комплексные фреймворки

 

Node в разработке и эксплуатации приложений

  • Отладка приложений Node
    • Отладчик Node
    • Node Inspector
  • Модульное тестирование
    • Модульное тестирование и модуль Assert
    • Модульное тестирование с использованием Nodeunit
    • Другие фреймворки тестирования
  • Обеспечение бесперебойной работы Node
  • Эталонные тесты и нагрузочное тестирование с использованием Apache Bench

Записаться и оплатить курс

Для того, чтобы записаться на курс, вам нужно оплатить полную стоимость курса.

При оплате курса, в примечаниях, обязательно, нужно указать ваш email, на которую в дальнейшем отправим инструкцию.

Стоимость полного курса Node.js составляет 22500 RUB.

Оплатить курс можно банковскими картами, электронными деньгами и через интернет-банкинг.

Старт курса примерно через 2-3 недели 12.11.2018.