1. Основы работы в ОС Linux
-
Регистрация пользователя в системе. Работа в консоли. Права доступа.
-
Запуск программ. Управление процессами.
-
Установка пакетов и обновление системы.
Лабораторная работа: Установка пакетов и обновление системы.
2. Основы JavaScript
-
Скриптовые языки программирования.
-
Типы данных и переменные. Операторы.
-
Определение и вызов функции.
-
Создание объекта. Формат JSON.
-
Поддержка событий.
Лабораторная работа: Создание объекта в формате JSON. Определение и вызов функции.
3. Обзор Node.js
-
Установка Node.js.
-
Запуск программ Node.js.
-
Создание веб-сервера.
Лабораторная работа: Установка Node.js и запуск веб-сервера.
4. Модули и фреймворки Node.js
-
Менеджер пакетов NPM. Установка модулей.
-
Фреймворк Express. Шаблонизаторы.
-
Основные этапы создания приложения.
Лабораторная работа: Установка модулей и применение шаблонизатора при создании приложений.
5. SQL и noSQL. Принципы организации MongoDB
-
Принципы работы сервера MongoDB.
-
Установка MongoDB. Командная строка MongoDB.
-
Разработка приложений с MongoDB.
-
Коллекции и документы в MongoDB. Хранение данных в формате BSON.
Лабораторная работа: Установка MongoDB, доступ к коллекции и импорт документов в коллекцию.
6. Оболочка Mongo. Основные операторы
-
CRUD в Mongo. Отбор документов в соответствии с заданными критериями.
-
Поиск в массиве. Сохранение результирующей выборки в курсоре.
-
Обновление данных, команды обновления данных для массивов.
-
Выборка, удаление и модификация данных MongoDB в приложении Node.js.
Лабораторная работа: Поиск, удаление и модификация данных.
7. Проектирование баз MongoDB
-
Особенности построения схем баз данных в MongoDB.
-
Отношения в MongoDB.
-
Нормализация и денормализация базы данных.
Лабораторная работа: Разработка базы геолокационных данных.
8. Оптимизация запросов
-
Хранилища данных MMAPv1 и WiredTiger.
-
Создание индексов.
-
Мониторинг производительности.
Лабораторная работа: Создание многоколоночных и геопространственных индексов. Мониторинг запросов.
9. Агрегирование данных
-
Группировка документов, функции агрегирования.
-
Проекции и соответствие критериям.
Лабораторная работа: Поиск данных с применением параметров агрегирования.
10. Библиотека Mongoose
-
Применение Mongoose для создания приложений на Node.js.
-
Выполнение операций CRUD.
-
Применение Express.
Лабораторная работа: Выполнение запросов к базе с помощью библиотеки Mongoose.