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

Проектный семинар «Разработка web интерфейсов»

Когда читается: 2-й курс, 1-4 модуль
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 3
Контактные часы: 68

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

Аннотация

Курс посвящен проектированию и разработке современных веб-интерфейсов и клиент-серверных приложений. Студенты осваивают веб-разработку, архитектурное мышление, компоненты, frontend- и backend-фреймворки, базы данных и API. Обучение построено по принципу вертикальной спирали: основные этапы разработки повторяются на новом уровне сложности с применением более развитых технологий и инженерных подходов. Каждый семинар посвящен отдельному навыку и проектному заданию. Фокус курса - полный цикл создания веб-продукта: интерфейс, логика, данные, качество, автоматизация и развертывание.
Цель освоения дисциплины

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

  • Проектировать архитектуру веб-приложений
  • Создавать адаптивные и интерактивные интерфейсы
  • Разрабатывать компонентные приложения на React и Angular
  • Применять TypeScript и организовывать кодовую базу
  • Создавать API на Node.js, Express и NestJS
  • Работать с базами данных, API и состоянием приложения
  • Реализовывать аутентификацию и контроль доступа
  • Применять тестирование и инструменты автоматизации
  • Управлять сборкой, контейнеризацией и развертыванием
Планируемые результаты обучения

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

  • Проектирует архитектуру веб-приложений
  • Создает адаптивные и интерактивные интерфейсы
  • Разрабатывает компонентные приложения на React и Angular
  • Применяет TypeScript и организовывает кодовую базу
  • Создает API на Node.js, Express и NestJS
  • Работает с базами данных, API и состоянием приложения
  • Реализует аутентификацию и контроль доступа
  • Применяет тестирование и инструменты автоматизации
  • Управляет сборкой, контейнеризацией и развертыванием
Содержание учебной дисциплины

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

  • ТЗ проекта: от идеи до требований к разработке
  • HTML и CSS: превращаем требования в интерфейс
  • JavaScript и DOM: интерфейс начинает действовать
  • Формы и хранилища: принимаем и сохраняем данные
  • HTTP и API: связываем интерфейс с данными
  • CI/CD и публикация: автоматизируем путь в интернет
  • Ручное тестирование: проверяем продукт как пользователь
  • TypeScript: делаем JavaScript предсказуемым
  • Сборка проектов: управляем кодом и ресурсами
  • Веб-компоненты: проектируем интерфейс как систему
  • Инженерное качество: автоматизируем разработку
  • Node.js и HTTP: создаем собственный API
  • Docker: создаем воспроизводимое окружение
  • Юнит-тестирование: проверяем отдельные части
  • React: строим интерфейс декларативно
  • Express: превращаем Node.js-сервер в приложение
  • MongoDB: сохраняем данные приложения
  • Express и MongoDB: создаем слой работы с данными
  • OpenAPI и Swagger: проектируем контракт API
  • React и API: соединяем клиент с сервером
  • Управление состоянием: контролируем данные приложения
  • Авторизация: управляем пользователями и доступом
  • Компонентные тесты: проверяем поведение интерфейса
  • Production-деплой: публикуем fullstack-приложение
  • Angular: переходим к платформенной разработке
  • NestJS: проектируем поддерживаемый backend
  • PostgreSQL: проектируем реляционные данные
  • NestJS и PostgreSQL: работаем с данными через ORM
  • API-first: разрабатываем систему от контракта
  • Angular и API: организуем работу с сервером
  • Signals и NgRx: масштабируем состояние приложения
  • Контроль доступа: защищаем корпоративное приложение
  • Интеграционные тесты: проверяем взаимодействие системы
  • Production: запускаем реальный веб-продукт
Элементы контроля

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

  • неблокирующий Семинарное тестирование
    2 мини-теста по 3-5 вопросов (до 5 минут каждый). Выдается перед и после каждого семинара
  • неблокирующий Домашние задания
    Каждое ДЗ - pull-request в форкнутый подготовленный репозиторий. Выдается в день семинара или на следующий день - дедлайн сдачи - до дня следующего семинара
  • блокирующий Контрольная работа
    Онлайн-тест с 40–60 заданиями по пройденному блоку тем. Задания могут включать одиночный и множественный выбор, “вставить код”, объяснение архитектурного решения.
  • блокирующий Семестровый проект
    Итоговое индивидуальное задание по материалам всего семестра. Студент реализует приложение на основе знаний за семестр.. Требования: архитектура, интерфейс, качество. Проверка: Работа оформляется в GitHub: проект, документация, README. Возможна короткая защита (устно или через pull request / video review).
  • блокирующий Экзамен
    Проектировочная задача на новую тему, не тема семестрового проекта. Студент получает свое задание: - сформировать минимальное ТЗ; - продумывать структуру интерфейса; - спроектировать архитектуру - обосновать тех.решения
Промежуточная аттестация

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

  • 2026/2027 4th module
    Итоговая оценка = 0.1 × ТЕСТ + 0.3 × ДЗ + 0.2 × КР + 0.2 × ПР+ 0.2 × ЭКЗ - каждая переменная в формуле оценки это средняя оценка подобных активностей за семестр (т.е. например ДЗ в формуле это средний балл по ДЗ)
Список литературы

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

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

  • Красильникова, О. И. JavaScript в разработке клиентской части веб-страниц : учебное пособие / О. И. Красильникова. — Санкт-Петербург : ГУАП, 2022. — 87 с. — ISBN 978-5-8088-1690-9. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/263951 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Не заставляйте меня думать : веб-юзабилити и здравый смысл, Круг, С., 2021

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

  • HTML5 и CSS3. Разработка сайтов для любых браузеров и устройств - 978-5-496-00185-4 - Фрейн Б. - 2014 - Санкт-Петербург: Питер - https://ibooks.ru/products/335000 - 335000 - iBOOKS

Авторы

  • Шовкович Елена Геннадьевна
  • Солдатова Татьяна Владимировна