Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Разработка Интернет Приложений (РИП) 2022

Лекции

Бекенд

Лекция 1. История Web, трехуровневая модель приложений, MVC

Лекция 2. Методология Agile, состав команды. Диаграммы UML

Лекция 3. Основы Web, шаблонизация, Django

Лекция 4. Базы данных, ER, PostgreSQL. ORM. Админка Django. Курсоры

Лекция 5. Веб-сервис. Swagger. Микросервисы

Лекция 6. Работа в git. Примеры специализированных сервисов - S3, уведомления, очереди

Фронтенд

Лекция 7. HTML, CSS, JS. Общие понятия frontend

Лекция 8. React, навигация, TypeScript.

Лекция 9. Ajax, запросы на React

Лекция 10. Redux. WebSocket

Лекция 11. Авторизация, токены, хранилище сессий.

Лекция 12. SSO. Ограничение прав на части приложения.

Мобильные приложения

Лекция 13. Общая лекция про мобильные приложения. Верстка

Лекция 14. Конкретные кейсы с примерами кода. Сетевое взаимодействие.

Лекция 15. Деплой, DevOps, RE

Лабораторные работы

У каждого своя предметная область на весь курс: бронирование отелей, билетов в театр/кинотеатр, онлайн-магазин

Основной вариант лаб по беку - это Django. Но есть ещё варианты на Go, Java, C# и Node.js

При защите необходимо продемонстрировать работу приложения, UML диаграмму, репозиторий github с кодом и ответить на вопросы.

Лабораторная работа №1

Базовая шаблонизация в Django для словаря. Создание базового интерфейса для просмотра списка (отели, товары, рейсы и тд) с ссылками и частью полей и при переходе по ссылке другая страница с более подробной информацией о товаре. В приложении должны быть использованы стили, для каждого элемента списка подгружается свое изображение.

На выбор Django, Go, Spring, Node.js

Контрольные вопросы: MVC, Django, шаблонизация, HTTP, Web, HTML

Лабораторная работа №2

Создание базы данных PostgreSQL (MySQL или др), подключение к шаблонизатору. Создание админки. Таблицы: таблица словаря, таблица фактов (с датами и статусом, три даты и менеджер), таблица пользователей

Статусы: введен, в работе, завершён, удалён

ER диаграмма: таблицы, связи, столбцы, типы столбцов и их длина, первичные, вторичные ключи

Контрольные вопросы: ORM, SQL, модель и миграции

Лабораторная работа №3

Создание веб-сервиса для получения данных из БД. Проверка в swagger/postman.

Диаграмма компонентов+классов: компонент сервиса, интерфейс, структура модели по классам

Контрольные вопросы: веб-сервис, микросервисы, REST API

Лабораторная работа №4

Базовая лаба по фронтенду. Карточки элементов, typescript, навигация. Автоскрол

На выбор React, Vue

Deployment диаграмма: узлы фронтенда, веб-сервиса, базы данных, web-сервера со статикой

Контрольные вопросы: react

Лабораторная работа №5

Добавление Ajax-запросов, redux. Подключение фронтенда к веб-сервису

На выбор React, Vue

Sequence диаграмма: получение HTML страницы, AJAX запросы

Контрольные вопросы: AJAX, json

Лабораторная работа №6

Добавление страницы просмотра для таблицы фактов (корзина товаров, бронирования) и окна добавления. Добавление фильтрации и поиска на странице словаря. Подключение к нужным сервисам.

Activity диаграмма: описание основного алгоритма, разделение на дорожки по элементам системы или ролям пользователей

Лабораторная работа №7

Таблица пользователей, авторизация, регистрация, хранение сессий, токены. Автозаполнение пользователей в таблице фактов.

Подключение SSO для авторизации пользователей.

Диаграмма компонентов: все компоненты системы с интерфейсами, выделить сервисы данных и авторизации

Лабораторная работа №8

Создание мобильного приложения с подключением к web-сервису. Просмотр товаров, без бронирования и редактирования.

Домашнее задание

Добавление роли менеджера контента, доработка под эту роль фронта и сервиса (редактирование таблицы словаря, изменение статусов таблицы фактов, фильтрация фактов). Доработка ролевой модели - ограничение прав на интерфейс

Оформление единого отчёта

Добавить диаграмму состояний и диаграмму прецедентов.

Актуализировать все диаграммы из лабораторных, добавить краткое описание к диаграммам.

Три раздела отчета: бизнес-процесс с прецедентами, архитектура, алгоритмы, интерфейс.

About

Репозиторий курса Разработка Интернет Приложений 2022 года

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages