Глава 22 · Веб-разработка с Python

Дальнейшее изучение веб-разработки на Python

От первого HTTP-запроса до работающего приложения с базой данных — и куда двигаться дальше.

Что теперь понятно после этой главы

  • Как устроен диалог браузера и сервера: запрос, ответ, HTTP и HTTPS.
  • Из чего состоит фронтенд — HTML, CSS, JavaScript — и что каждый из них делает.
  • Как Flask превращает функции Python в обработчики HTTP-запросов через маршруты.
  • Как шаблоны Jinja собирают HTML из данных, и почему автоэкранирование включено по умолчанию.
  • Что такое JSON и API, и чем ответ с данными отличается от HTML-страницы.
  • Чем отличаются друг от друга Flask, Django и FastAPI — и что такое WSGI и ASGI.
  • Зачем нужна база данных, что такое SQL, и чем реляционные базы отличаются от нереляционных.
  • Что такое миграция схемы и перенос данных — и почему это два разных значения одного слова.
  • Базовые принципы безопасности: параметризованные запросы, автоэкранирование, секреты.
  • Как проверить Flask-приложение тестами и чем сервер разработки отличается от рабочего развёртывания.

Вы прошли путь от обмена сообщениями по HTTP между браузером и сервером до работающего приложения с базой данных, JSON API и тестами — солидная основа, но далеко не вся веб-разработка. Этой теме будет посвящён отдельный курс Cartesian School «Веб-разработка на Python: от HTTP до развёртывания» (курс готовится). Он продолжит материал этой главы значительно глубже.

Чем займётся будущий специализированный курс
Фреймворки глубже
Архитектура Flask за пределами основ
Django целиком
FastAPI и типизированные API
Базы данных
PostgreSQL на практике
SQLAlchemy и Alembic
ORM и миграции Django
API и обмен данными
REST подробно
OpenAPI
Аутентификация и авторизация
Параллельность и реальное время
Асинхронный Python
ASGI на практике
WebSocket
Инфраструктура сервиса
Фоновые задачи
Redis и кеширование
Docker, обратные прокси, CI/CD
Эксплуатация
Конфигурация и секреты
Логи, метрики, наблюдаемость
Рабочее развёртывание

А следующая глава книги возвращается к настольным мини-проектам на Python — совсем другая часть языка в деле.