Программирование [Илья Перминов] [Stepik] FastAPI для начинающих (2024)

ОПИСАНИЕ:

FastAPI для начинающих [Stepik] [Илья Перминов]
Этот курс представляет собой подробное руководство по созданию приложений с помощью FastAPI. Вы узнаете, как создавать быстрые, эффективные и масштабируемые REST API на Python. Вы начнете с приложения Hello World и далее создадите полноценное API интернет магазина, использующее асинхронные запросы к базе данных, аутентификацию и права доступа. Внимание, данный курс не содержит ни минуты видео!

О курсе:
● Раздел 1: «Введение в API» мы познакомимся с API, архитектурой REST API. Изучим основные HTTP методы и коды ответа сервера.
● Раздел 2: «Знакомство с FastAPI» мы познакомимся с основами FastAPI и создадим свое первое API, возвращающее “Hello World”. Также мы подробно изучим процесс создания конечных точек с использованием системы маршрутизации в FastAPI. И научимся валидировать параметры, получаемые из пути и тела запросов.
● Раздел 3: «Создание CRUD-приложения на FastAPI» мы спроектируем и реализуем простой CRUD проект. Познакомимся с основными методами запросов GET, POST, PUT, DELETE, научимся создавать и валидировать модели класса Pydantic. Изучим моделирование ответов, обработку ошибок и коды состояния. Обсудим, как можно использовать шаблоны Jinja для создания представлений и вывода ответов из API.
● Раздел 4: «Внедрения зависимостей» мы рассмотрим шаблон внедрения зависимостей, используемый FastAPI для управления экземплярами и структурой проекта с помощью директивы Depends() и сторонних модулей расширения.
● Раздел 5: «Интернет магазин на FastAPI» мы рассмотрим основные возможности FastAPI, научимся правильно структурировать проект. Узнаем об использовании APIRouter для организации проектов. Создадим подключение к БД через SQLAlchemy, научимся использовать Alembic для выполнения миграций. Научимся использовать сессии и напишем свои первые запросы, которые в дальнейшем мы сделаем асинхронными. Реализуем аутентификацию используя HTTP Basic Auth, OAuth2, и научимся генерировать JWT токен. Где в дальнейшем будем использовать его, для проверки прав доступа к различным конечным точкам нашего API.
● Раздел 6: «Продвинутые возможности в FastAPI» мы рассмотрим версионирование API сервисов, логгирование, кеширование ответов. Изучим, что такое тестирование и как тестировать конечные точки API.
● Раздел 7: «Docker + FastAPI» мы рассмотрим основные концепции Docker и на примере создадим свой контейнер с Python проектом. Далее мы упакуем FastAPI, PostgreSQL, NGINX в контейнеры и подготовим проект к деплою.
● Раздел 8: «Деплой проекта через Docker» мы рассмотрим деплой проекта FastAPI, вместе с базой данных PostgreSQL, веб сервером Gunicorn и Nginx на контейнерах Docker с Compose.

Чему вы научитесь:

  • Работать с фреймворком FastAPI
  • Писать свои API сервисы
  • Валидировать данные через Pydantic
  • Научитесь асинхронно работать с БД через SQLAlchemy и выполнять миграции используя Alembic
  • Создавать аутентификацию на основе базовых методов и OAuth2 и JWT
  • Упаковывать FastAPI в Docker Compose
  • Выполнять деплой проектов на сервер

В курс входят:
52 урока / 40 тестов / 9 интерактивных задач

Содержание:
Введение в API

  1. Что такое API и его типы?
  2. Изучаем REST. Архитектура и лучшие практики
  3. HTTP методы и идемпотентность
  4. Коды состояний HTTP

Знакомство с FastAPI

  1. Что такое FastAPI?
  2. HelloWorld на FastAPI
  3. Знакомство с документацией API
  4. Маршрутизация в FastAPI
  5. Валидация параметров маршрутов (Path, Query)

Создание CRUD-приложения на FastAPI

  1. Проектирование и реализация REST API (GET, POST, PUT, DELETE)
  2. Модели Pydantic и их валидация
  3. Модели ответов и обработка ошибок
  4. Использование шаблонов Jinja и форм в FastAPI
  5. Итоги раздела

Внедрения зависимостей

  1. Внедрение функций и классов зависимости
  2. Зависимости в операциях пути и глобальные зависимости

Интернет магазин на FastAPI

  1. Структурирование FastAPI, APIRouter и написание моделей Pydantic
  2. Подключение к базе данных используя SQLAlchemy
  3. Введение в модели SQLAlchemy
  4. Отношения таблиц в SQLAchemy
  5. Миграции в SQLAlchemy, знакомство с Alembic
  6. Написание запросов к БД используя SQLAlchemy, часть 1
  7. Написание запросов к БД используя SQLAlchemy, часть 2
  8. Добавление асинхронности, переход на PostgreSQL
  9. Добавление асинхронности в запросах SQLAlchemy
  10. Реализация аутентификации используя HTTP Basic Auth
  11. Реализация аутентификации с помощью OAuth2 и JWT
  12. Управление правами доступа в FastAPI
  13. Итоги работы
  14. Экзамен

Продвинутые возможности в FastAPI

  1. Версионирование API
  2. Middleware
  3. Логгирование
  4. Механизм кэширования
  5. Асинхронные задачи с Celery и Redis
  6. Создание асинхронного WebSocket
  7. Тестирование приложений FastAPI, часть 1
  8. Тестирование приложений FastAPI, часть 2

Docker + FastAPI

  1. Знакомство с Docker
  2. Основные команды Docker
  3. Создание образов и запуск контейнера
  4. Контейнеризация Django и написание Dockerfile
  5. Введение в Docker Compose
  6. Docker Compose на примере FastAPI, PostgreSQL и Redis
  7. Подготовка к деплою, Gunicorn и NGINX в Docker Compose
  8. Настройка Docker-Compose для статических и медиа файлов
  9. Итоги работы

Деплой проекта через Docker

  1. Покупка VPS, доменного имени, привязка DNS
  2. Установка Docker на сервере
  3. Запуск Docker контейнеров на сервере
  4. Получение SSL-сертификата от Let’s Encrypt и настройка HTTPS

Дополнительно.

ПРОДАЖНИК:

СКАЧАТЬ:

Нравится0

Не нравится0

openssource

Recent Posts

Личностный рост [Прямая речь] Гаджеты и мозг. Надо ли волноваться, если ребенок зависает в смартфоне (2025)

ОПИСАНИЕ:Психофизиолог Марьяна Безруких расскажет, какую пользу приносят гаджеты детям и насколько безопасно их использование в…

4 дня ago

Личностный рост [Юлия Воронина] Божество моей судьбы (2025)

ОПИСАНИЕ:Слив курса Божество моей судьбы [Юлия Воронина]Божества – один из важнейших элементов древнего метафизического искусства…

4 дня ago

Личностный рост [4brain] [Евгений Буянов, Дмитрий Радин] ТРИЗ на практике (2024)

ОПИСАНИЕ:Чему научит наш курс по ТРИЗ?ТРИЗ (теория решения изобретательских задач) – это алгоритмы и приёмы,…

4 дня ago

Фото и видео [Ольга Береславская, Вадим Закиров] Снимай и зарабатывай на editorial-фотографии (2025)

ОПИСАНИЕ:Слив курса Снимай и зарабатывай на editorial-фотографии [Ольга Береславская, Вадим Закиров]Начни снимать editorial-фотографии (даже на…

4 дня ago

Фото и видео [Udemy] [Serhii Zashkaruk] Видеомонтаж в Adobe Premiere Pro – с нуля до результата (2025)

ОПИСАНИЕ:Материалы курса8 разделов28 лекцийОбщая продолжительность 8 ч 56 минЧему вы научитесь:Практические домашние задания / Полноценное…

4 дня ago

Фото и видео [Никита Пономаренко] [All PSD] Пак Материалов для Ютуберов, Дизайнеров и Монтажёров (2024)

ОПИСАНИЕ:Слив курса REvolution Pack - Пак Материалов для Ютуберов, Дизайнеров и Монтажёров 2024 [All PSD]…

4 дня ago

This website uses cookies.