Web application architecture and frameworks
Аннотация
Курс «Архитектура и фреймворки веб-приложений» посвящен созданию современных приложений на основе компонентов платформы Веб. В первом семестре курса рассматривается архитектура данной платформы в целом, технические вопросы реализации ее основных компонентов (большое внимание уделяется работе протокола HTTP и его современному состоянию), а также существующие архитектурные принципы, инструментальные средства и каркасы приложений (фреймворки) для разработки серверной части (back-end) веб-приложений. В данной части курса также рассматривается специфика веб-приложений в следующих вопросах:
- обеспечения информационной безопасности;
- тестирование;
- современные методы сопровождения процесса разработки;
- разработка и сопровождение высоконагруженных систем.
Информация о курсе
Курс читается для магистрантов направления «01.04.02 — Прикладная математика и информатика», обучающихся по программе «Сетевые технологии и сервисы».
Авторы: К. А. Кулаков, А. С. Колосов, М. А. Крышень
Трудоемкость дисциплины (1 семестр): 180 часов (5 зачетных единиц), из них 45 часов — аудиторная работа, 135 часов — самостоятельная работа.
Лекции
- 14.09.2016, Введение. Веб как программная платформа
- 28.09.2016, Протокол HTTP
- 12.10.2016, Архитектура Веб-сервера
- 26.10.2016, Веб-приложения и фреймворки
- 09.11.2016, Сохранение состояния в HTTP
- 30.11.2016, Информационная безопасность веб-приложений
- 14.12.2016, Технологии и инструментальные средства процесса разработки веб-приложений
- 21.12.2016, Проблемы разработки высоконагруженных веб-приложений
Методические указания
- Создание простых веб-приложений на Python
- Упражнения по работе протокола HTTP
- Образ виртуальной машины для настройки веб-сервера
- Упражнения по работе с Flask
- Git-репозиторий учебного проекта «Коробочки!™» (для получения
копии используйте команду
git clone
)
Ссылки
- Стандарты
- Изучение Python
- О фрэймворках
- Best practices
- Разное
- Architectural Styles and the Design of Network-based Software Architectures (Roy Fielding's PhD Dissertation)
- NGINX vs. Apache: Our View of a Decade-Old Question
- Caching Tutorial for Web Authors and Webmasters
- PHP: a fractal of bad design (обсуждение на Hacker News)
- PHP: The Right Way
- Pro Git book
- Choosing an HTTP Status Code — Stop Making It Hard
- Staging Servers, Source Control & Deploy Workflows, And Other Stuff Nobody Teaches You
- Developing and Deploying with Branches