Курс Nodejs. JavaScript серверное программирование

  • Старт: 22.04.2024
  • Продолжительность: 2 месяца
  • График: Пн Ср
  • Время: 17:00-18:00
  • Цена: 200 €

Nodejs является платформой программирования, в основе которой лежит JavaScript (ECMA Script). JavaScript является популярным из-за его применение в создании веб-интерфейса. Эта платформа разработана на базе двигателя Chrome V8, который позволяет компилировать JavaScript код в машинный код в режиме реального времени (JIT). Это дает возможность расширить сферу применения JavaScript от создания веб-интерфейса сайта до языка общего назначения.

Nodejs позволяет взаимодействовать с различными устройствами низкого уровня благодаря программному интерфейсу (API), написанным в C ++. Также ядро Nodejs позволяет подключать различные модули, созданные во многих других языках программирования, таких как Python, C #, C ++, Java и т.д.

Платформа Nodejs стала популярной в качестве альтернативы для создания веб-приложений и веб-серверов, таких как Apache, Microsoft IIS, Nginx. Главное преимущество, которое увеличило популярность, что сервер nodejs может работать в асинхронном режиме (evented io). Этот режим был назван без блокировки (non-blocking) и поместил его в топе других веб-серверов по производительности.

Хотя Nodejs является относительно новой платформой (выпущен в мае 2009 года), есть много компаний мирового класса: Microsoft, Joyent, Yahoo, IBM и т.д., которые мигрировали (перенесли) некоторые из своих проектов. Уже сделано достаточно много сайтов мирового класса: walmart.com , paypal.com , linkedin.com , ...

По окончании курса Вы будете уметь:

  • Cоздавать веб-сервер
  • Cоздавать динамическое веб-приложение
  • Использовать технологии позволяющие передавать и получать данные без перезагрузки страницы
  • Использовать сеансы для сохранения состояния веб-приложения
  • Использовать документо-ориентированную систему управления базами данных MongoDB
  • Осуществлять безопасную авторизацию пользователя

Курс рекомендован:

  • Cлушателям, закончившим курсы по JavaScript и желающим продолжить изучение этой технологии
  • Cлушателям, закончившим курсы направления «веб-технологии» и желающим идти в ногу со временем
  • Веб-разработчикам желающим изучить новую серверную технологию

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

Все преподаватели →

Предварительная подготовка

Требуемая подготовка (обязательная): Успешное окончание курса JavaScript. Уровень 1. Основы веб - программирования или эквивалентная подготовка

Рекомендуемая подготовка (необязательная): Успешное окончание курса JavaScript. Уровень 2. Расширенные возможности или эквивалентная подготовка.

Получить консультацию о необходимой предварительной подготовке по курсу Вы можете по тел. 79 844 644

Требуемая подготовка послужит основой дальнейшего успешного прохождения курсов. Обычно она указана под названием одного из курсов нашего учебного центра (обязательная предварительная подготовка). Рекомендуется ознакомиться с программой указанного курса и оценить свои знания в рамках данной программы. Если Вы не обладаете достаточным уровнем знаний (90%) в указанном курсе, то Вам необходимо будет пройти предварительную подготовку. Это станет залогом Вашего успешного прохождения курса.

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

Модуль 1. Основы Node.js

  • Принципы работы веб-сервера
  • Chrome V8, браузер и сервер
  • Что такое nodejs
  • Преимущества nodejs
  • Установка платформы
  • Настройка рабочей среды
  • Простейшие операции на NodeJs
  • Области применения
  • Практическая работа

Модуль 2. Объекты и методы

  • Браузер и консольные команды nodejs
  • Командная строка (CLI)
  • Системные переменные (unix/windows)
  • Запуск сценария в node
  • Процессы и thread-ы в node
  • Возвращаемые значения
  • Запуск функции
  • Глобальные объекты
  • Преимущества EcmaScript 6/Harmony
  • Практическая работа

Модуль 3. События

  • События (evented io)
  • Асинхронный механизм обработки
  • Синхронный механизм обработки
  • Генерирование событий
  • Захват и обработка событий
  • Обработка ошибок
  • Стиль программирования "nodejs"
  • Что такое "Callback Hell", решения
  • Промиссы, библиотека Q (promises A+)
  • Практическая работа

Модуль 4. Создание простого приложения (node app)

  • Скелет обычного приложения node
  • Файлы package.json, index.js
  • Модульность приложения
  • Преимущества модулей/пакетов
  • Подключение файлов
  • Хранение конфигураций, переводы
  • Практическая работа

Модуль 5. Создание модуля

  • Путь для поиска модулей
  • Как располагаются модули
  • Скелет модуля
  • Экспорт объекта модуля
  • Методы и свойства модуля
  • Видимость переменной и функции
  • Подключение модуля
  • Практическая работа

Модуль 6. Модули node, использование NPM

  • Использование опубликованных модулей
  • NPM, поиск, установка, удаление модулей
  • Публикация модуля
  • Создание и выбор версии
  • Глобальные и локальные модули
  • Установка зависимостей между модулями
  • Версии модулей
  • Утилита git
  • Самые популярные модули Nodejs
  • Практическая работа

Модуль 7. В ногу со временем!

  • Модуль Yo
  • Модуль HTTP
  • Модуль Bower
  • Модуль Grunt
  • Модуль Swig
  • Модуль Fs
  • Модуль Routes
  • Модуль BodyParser
  • Модуль Postdata

Модуль 8. Генераторы

  • Генераторы yo
  • Принцип создания шаблонов
  • Создайте модуль node с yo
  • Генераторы для приложений yo
  • Практическая работа

Модуль 9. Автоматизация

  • Автоматизация работы
  • Установка пакетов фронтенд с bower
  • Автоматическая проверка ошибок, модуль jslint
  • Обработка css, js с Grunt
  • Отслеживание изменений, модуль grunt-watch
  • Автоматическая перезагрузка страницы, модуль reload
  • Оптимизация и автоматизация
  • Практическая работа

Модуль 10. Безопасность

  • Важность тестирования приложений
  • Подготовка и запуск тестов с mocha
  • Анализ результатов
  • Практическая работа

Модуль 11. В ногу со временем

  • Профайлинг
  • Инструменты анализа и сборки данных
  • Обнаружение и удаление "bottleneck"-ов
  • Оптимизация RAM и потребление CPU
  • Полезные советы
  • Практическая работа

Модуль 12. Простое веб-приложение на Nodejs

  • Обзор модуля http
  • Объекты запроса и ответа
  • Создание простого веб-сервера при помощи модуля http
  • Переменные "резиденты", преимущества в сравнении с PHP
  • Обработка ошибок
  • Чтение данных с GET/POST
  • Создание динамических маршрутов
  • Выдача статичных страниц (css,html)
  • Запуск в постоянном режиме, модуль forever

* Опционально: сравнение производительности nodejs/apache php
* Практическая работа
* Окончательный тест для сертификации

Рекомендуемые курсы по специальности 

Чтобы стать профессионалом, мы рекомендуем Вам вместе с этим курсом изучить:

Запись на курс