Бакалавриат
2026/2027





Проектный семинар «Разработка web интерфейсов»
Статус:
Курс по выбору (Дизайн и разработка информационных продуктов)
Кто читает:
Базовая кафедра Т-Банка
Где читается:
Факультет компьютерных наук
Когда читается:
3-й курс, 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