Skip to content

Репозиторий курса СГН3 по веб-разработке

Notifications You must be signed in to change notification settings

iu5git/web-fsgn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 

Repository files navigation

Информационные системы и технологии

Репозиторий курса СГН3 Информационные системы и технологии

Модуль 1. Веб-приложения. Лекции

  • Лекция 1. Введение в Web

Основы Web: HTML, URI, кратко HTTP. CSS, кратко JavaScript. Основы работы браузера. DOM

  • Лекция 2. Основы JavaScript

операторы, функции, коллекции, классы

  • Лекция 3. История Web, трехуровневая модель приложений, Шаблонизация, Django

История Web, трехуровневая модель приложений, Шаблонизация, Django

  • Лекция 4. Протокол HTTP

Протокол HTTP

  • Лекция 5. База данных PostgreSQL. Админка Django и ORM

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

  • Лекция 6. Методология Agile. Диаграммы UML

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

Модуль 2. Одностраничные приложения (SPA). Лекции

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

Веб-сервис. Swagger. Микросервисы

  • Лекция 8. Модель SPA. Фронтенд

npm, HTTP, модель клиент-сервер, spa, кратко express, фронтенд

  • Лекция 9. Запросы AJAX

AJAX. JSON/XML, XmlHttpRequest, Cors

  • Лекция 10. Асинхронный JavaScript

Event Loop, промисы, async/await, fetch

  • Лекция 11. Web реального времени

HTTP/2, Polling, WebSocket

  • Лекция 12. Авторизация. Сессии. Куки

Авторизация, куки, токены, хранилище сессий. Ограничение прав на части приложения

  • Лекция 13. JWT. SSO

JWT. SSO

Модуль 1. Веб-приложения

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

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

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

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

Создание калькулятора: верстка на HTML, CSS. LiveServer. Добавить кнопки по варианту.

Контрольные вопросы: HTML, CSS

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

Создание калькулятора: функции на JS. По вариантам реализовать различные функции калькулятора: log, sin, накопление итога и тд

Контрольные вопросы: JavaScript, HTTP

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

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

В приложении должны быть использованы стили, для каждого элемента списка подгружается свое изображение.

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

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

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

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

Создание базы данных PostgreSQL/MySQL (SQLite использовать нельзя), подключение к шаблонизатору. Создание админки.

Для карточек таблицы услуг добавить кнопку удаления услуги с помощью выполнения SQL запроса.

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

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

Модуль 2. Одностраничные приложения (SPA)

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

Создание веб-сервиса для получения/редактирования данных из вашей БД. Требуется разработать методы для основных (минимум трех) таблиц вашего приложения. Проверка в swagger/postman.

Добавить метод для подсчета суммы (количества) покупок/бронирований за определенную дату через обращение к методам модели.

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

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

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

Создание проекта через npm, сервер express. Верстка интерфейса с карточками, данные через mock объекты.

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

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

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

Продолжение Лабораторной работы 6: подключение фронтенда к разработанному в 5 лабораторной API. Cors, запросы XHR или fetch

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

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

About

Репозиторий курса СГН3 по веб-разработке

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published