Консультация

Консультируем с 9:00 до 19:00 Выходной: суббота и воскресенье


Сообщение об ошибке
Сообщение об ошибке

Архитектура веб-проектов на Node.js

Профессиональный курс

Программная платформа Node или Node.js, которая расширяет возможности JavaScript, предоставляет веб-разработчикам ряд новых функций. Она позволяет унифицировать значительную часть программной логики, использовать компетенции одних и тех же специалистов для разработки как фронтенда, так и бэкенда. При этом с помощью привычного и гибкого языка JS реально разрабатывать не только бизнес-логику, но и веб-сервер сайта, который в данном случае будет использовать  асинхронный подход к обработке запросов клиентов вместо применяемой обычно многопоточности.

Профессиональный курс «Архитектура веб-проектов на Node.js» – выбор тех, кто не боится вызовов, интересуется новыми технологиями и готов применять нестандартные решения в своей работе. Программа обучения нацелена не только на изучение бэкенд-разработки на Node.js и применении JavaScript. Недостаточно просто владеть фронтенд и бэкенд-разработкой, чтобы построить качественный рабочий веб-проект. Курс позволит пройти все этапы разработки и действительно понять архитектуру веб-приложений. Если провести аналогию, то вы сможете научиться последовательно собирать из «кубиков» такую «башню», которая вам необходима. Это сделает вас незаменимым участником любого веб-проекта.

Описание курса

Формы обучения

Очно-дистанционная

16.11.2019 - Осталось: 32 дня
Очные занятия по субботам c 09.30 до 12.20 в г.Минске;
Индивидуальные и групповые онлайн-консультации;
Контролируемые самостоятельные работы
779 BYN
68 уч.ч (два месяца)
Рассрочка две выплаты 428 BYN/ месяц
Осталось 9 из 18 мест
№ группы: M-NA1-01-19

Для кого этот курс

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

  • Для фронтенд-разработчиков, владеющих JavaScript или современными SPA-фреймворками и желающих развиться в fullstack-разработчика.

  • Для бэкенд-разработчиков, желающих понять тонкости взаимодействия с фронтендом и поисковыми системами.

Необходимая подготовка

  • Уверенное владение JavaScript.

  • Понимание принципов коммуникации между веб-сервером и браузером.

  • Базовое владение принципами вёрстки веб-страниц.

Условия отбора

Вы будете уметь

  • Администрировать веб-сервера с помощью инструментов WinSCP и PuTTY.

  • Разрабатывать веб-сервер и бэкенд сайта на основе фреймворка express.

  • Организовывать эффективное взаимодействие между браузером и сервером.

  • Эффективно работать с файлами и потоками в Node.js.

  • Разрабатывать модульные, интеграционные, нагрузочные тесты для веб-проектов.

  • Работать с реляционными и NoSQL базами данных.

  • Организовывать административный интерфейс сайта.

  • Обеспечивать видимость сайта поисковыми системами.

  • Настраивать эффективную и масштабируемую сетевую архитектуру с использованием nginx, express и базы данных.

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

  1. Знакомство с ландшафтом и инструментами
    – Что такое архитектура?
    – Знакомство с Linux.
    – Понятие о сервере и хостинге.
    – WinSCP.
    – SSH и PuTTY.
    – Node.js и npm.
  2. Node.js как среда для веб-сервера
    – Что такое веб-сервер, популярные веб-сервера.
    – Почему не пакеты net, http, connect?
    – Пакет express.
    – Понятие о middleware для express.
    – Простейшее логирование.
    – Пакет nodemon.
    – Валидация/санация данных запроса.
    – Домашнее задание.
  3. Http, взаимодействие браузера с сервером
    – Что такое DNS?
    – Http-методы и форматы представления параметров в http-запросах.
    – Стиль REST.
    – Форматы тел запроса и ответа, MIME-типы.
    – Заголовок Content-Disposition.
    – Вопросы кодировки.
    – Работа с двоичными данными.
    – Стандарт CORS.
    – Домашнее задание.
  4. Работа с Express.js
    – Самостоятельная раздача статических файлов и проблемы правильной расстановки заголовков.
    – Раздача статических файлов через middleware.
    – Проблемы кодировки при раздаче статических файлов.
    – Передача в браузер файла для скачивания.
    – Логирование.
    – Работа с cookie.
    – Нагрузочное тестирование.
    – Домашнее задание.
  5. Node.js как бэкенд сайта
    – Роли бэкенда сайта.
    – Роутинг и ЧПУ.
    – Шаблонизация.
    – Работа с ES6-модулями в Node.js.
    – Переиспользование кода между браузером и сервером, изоморфный код.
    – Модульное тестирование бэкенда.
    – Домашнее задание.
  6. Node.js как JavaScript общего назначения
    – Неблокирующий ввод/вывод вместо многопоточности.
    – Глобальный объект.
    – EventEmitter.
    – Event loop.
    – Cоглашения о коллбеках.
    – Асинхронность и пакет async.
    – Синхронность require.
    – Терминальный ввод-вывод.
    – Работа с буферами.
    – Работа с файлами, модули path и fs.
    – Потоки ввода/вывода.
    – Работа с операционной системой, модули os и system.
    – Работа с сетью – модули http, websocket, socket.io, nodemailer.
    – Модульное тестирование.
    – Домашнее задание.
  7. Базы данных
    – Терминология – БД, СУБД, РСУБД, SQL, NoSQL.
    – Популярные РСУБД.
    – Основы SQL.
    – Работа с MySQL под Node.js.
    – Паттерн CRUD.
    – Работа с MongoDB под Node.js.
    – Домашнее задание.
  8. Административный интерфейс, взаимодействие с поисковыми системами
    – Файлы и теги, используемые в СЕО.
    – Принципы разработки веб-страниц с учётом принципов СЕО.
    – Проблемы с SEO у SPA и способы их решения – SSR, prerender.
    – Роутинг.
    – Аутентификация и авторизация.
    – Подходы к формированию sitemap.xml.
    – Подходы к организации внутреннего поиска по сайту.
    – Домашнее задание.
  9. Nginx
    – Знакомство с nginx, почему именно nginx?
    – Раздача статики, сжатие ответов.
    – Управление кэшированием.
    – Логирование.
    – Редиректы.
    – Реверсивное проксирование, сжатие и кэширование проксированных ответов.
    – Ограничение нагрузки на проксированный сервер.
    – Балансировка нагрузки и отказоустойчивость.
    – Трюки.
    – Работа с https – сертификаты, настройка, тонкости, SSL-терминация.
    – Настройка http/2.
    – Вопросы производительности, highload.
    – Нагрузочное тестирование статического сайта.
    – Нагрузочное тестирование сайта с бэкендом на express.
    – Непрерывное функционирование сайта при обновлении версии фронтенда и бэкенда.

Преподаватели курса

Другие курсы программы Разработка на Node.js

Алексей Локтев

Опыт работы:более 17 лет

Веб-разработкой я занялся в 2005 году - предложили сделать сайт для крупной строительной компании. Это было для меня в новинку, но я решился и втянулся :) С тех пор разработал несколько десятков самых разных сайтов - и фронтенд-часть, и бэкенд - на движке и CMS собственной разработки.

Учился я только на собственном опыте - в то время даже интернет был не очень доступен, да и в сети было не очень много хороших ресурсов, ответы на вопросы часто приходилось искать по наитию.

На курсе "Разработка веб-сайтов с использованием HTML и CSS" студенты обучаются верстать сайты с использованием HTML5 и CSS3, в том числе мобильные и адаптивные, а также знакомятся с основами JavaScript.

Те, у кого есть склонность к программированию, могут продолжить обучение на курсе "Разработка веб-приложений на JavaScript". На этом курсе совсем другой уровень – на занятиях глубоко изучаем мультимедийные, коммуникационные, интерактивные возможности браузера, учимся разрабатывать сайты и веб-приложения с использованием тачскрина, анимации.

FrontEnd-разработка - одна из самых быстрорастущих специальностей. Здесь очень важно быть всегда "на гребне волны" и учиться даже во время работы, так как отставание от отрасли на год уже может снизить ценность специалиста. И также, важно любить то что делаешь :)

Мне очень нравится, что к концу курса слушатели становятся заметно увереннее и используют множество профессиональных терминов, задают сложные вопросы. А главное – трудоустройство в ведущие ИТ-компании по профилю FrontEnd-разработки.

Консультация и запись

Более 2760 выпускников успешно работают в IT-компаниях в Беларуси и за рубежом

Акции и новости