• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
2025/2026

Backend-разработка

Статус: Маго-лего
Когда читается: 3 модуль
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 3
Контактные часы: 40

Программа дисциплины

Аннотация

Курс посвящён изучению основ backend-разработки, необходимых для создания и поддержки серверной части веб-сервисов и аналитических систем. На лекциях рассматриваются ключевые концепции клиент-серверного взаимодействия, принципы работы HTTP и REST API, подходы к организации хранения данных и реализации фоновых процессов. Практическая часть курса направлена на развитие навыков проектирования и реализации простых веб-сервисов с использованием Python-фреймворков (Flask, FastAPI), интеграции баз данных, настройки кэширования и масштабирования. Особое внимание уделяется вопросам безопасности, отказоустойчивости и архитектурного проектирования распределённых систем. Итогом курса является разработка и развёртывание полноценного прототипа веб-сервиса.
Цель освоения дисциплины

Цель освоения дисциплины

  • Сформировать у студентов представление о принципах работы серверных приложений и современных веб-сервисов, а также развить практические навыки создания, тестирования и развёртывания backend-систем с учётом требований к масштабируемости, безопасности и надёжности.
Планируемые результаты обучения

Планируемые результаты обучения

  • Понимать основы веб-разработки и архитектуры сервисов: студент объясняет принципы работы клиент-серверной модели, HTTP и REST API и различает типы HTTP-запросов и применяет Python-фреймворки (Flask, FastAPI).
  • Создавать и тестировать веб-сервисы: студент реализует REST API, маршрутизацию и обработку запросов, пишет и запускает базовые тесты, использует инструменты отладки (curl, Postman).
  • Работать с данными и фоновой обработкой: студент проектирует простую базу данных, пишет SQL-запросы, использует Redis для кэширования и реализует фоновые задачи (Celery, cron).
  • Обеспечивать безопасность и масштабируемость: студент применяет безопасные подходы хранения и передачи данных (JWT, шифрование), объясняет принципы масштабирования, балансировки нагрузки и отказоустойчивости.
  • Проектировать и развёртывать прототип системы: студент интегрирует компоненты (API, БД, фоновые процессы, безопасность), развёртывает прототип в локальной или облачной среде и оценивает его производительность.
  • Уметь реализовать веб-сервис, оборачивающий модель.
  • Уметь совершить все необходимые действия для реализации следующих шагов: 1. Реализация API и тестов. 2. Интеграция ML-модели. 3. Работа с базой данных. 4. Фоновые задачи (воркеры, очереди, крон-задания). 5. Кэширование. 6. Мониторинг, логирование и трассировка. 7. Аутентификация входящего трафика.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Основы Web-разработки
  • API вокруг ML-модели
  • Базы данных
  • Фоновые задачи и процессы ETL
  • Масштабирование сервисов
  • Надежность системы
  • Безопасность и аутентификация
  • System design
  • Деплой и развертывание
  • Рефлексия курса и подготовка к сдаче итоговой работы
Элементы контроля

Элементы контроля

  • неблокирующий Вовлечённость
  • неблокирующий Домашние задания
  • неблокирующий Итоговая работа
Промежуточная аттестация

Промежуточная аттестация

  • 2025/2026 3rd module
    0.1 * Вовлечённость + 0.7 * Домашние задания + 0.2 * Итоговая работа
Список литературы

Список литературы

Рекомендуемая основная литература

  • Паттерны разработки на Python : TDD, DDD и событийно-ориентированная архитектура, Персиваль, Г., 2022
  • Простой Python. Современный стиль программирования, Любанович, Б., 2017
  • Экстремальное программирование, пер. с англ. П. Анджан, 224 с., Бек, К., 2002

Рекомендуемая дополнительная литература

  • System Design : подготовка к сложному интервью, Сюй, А., 2023
  • Паттерны разработки на Python: TDD, DDD и событийно-ориентированная архитектура. - 978-5-4461-1468-9 - Персиваль Гарри, Грегори Боб - 2022 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/382391 - 382391 - iBOOKS
  • Простой Python. Современный стиль программирования. 2-е изд. - 978-5-4461-1639-3 - Билл Любанович - 2021 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/373510 - 373510 - iBOOKS
  • Экстремальное программирование: разработка через тестирование - 978-5-496-02570-6 - Бек Кент - 2017 - Санкт-Петербург: Питер - https://ibooks.ru/bookshelf/355246 - 355246 - iBOOKS

Авторы

  • Емашева Валерия Анатольевна