Курс Python FastAPI
- Online
- Для опытных
- Python
![]() |
|
Образовательный центр: | Foxminded |
---|---|
Формат: | Курс |
Язык обучения: | Ukrainian |
Начало курса: | Любой момент |
Стоимость обучения: | 8 000 UAH за курс |
Цей курс стане чудовим рішенням для Python-розробників, які хочуть глибше зануритися в сучасні технології розробки API, працювати з FastAPI та впроваджувати DevOps-підходи у свої проєкти. Після завершення курсу ви отримаєте не тільки знання, а й практичний досвід, який допоможе вам реалізовувати складні проєкти у реальному середовищі.
Програма курсу
Модуль 1. Знайомство з FastAPI
Objective 1: FastAPI. Створення простого API. Моделі, валідація даних. Автогенерація документації
- Що таке FastAPI?
- Переваги FastAPI
- Встановлення FastAPI
- Створення функцій обробки запитів
- Pydantic
- Створення моделей даних
- Створення правил валідації
- Що таке ін'єкція залежностей?
- Dependens у FastAPI.
- Особливості використання pydantic моделей як залежностей
- Сервіс автодокументації
Objective 2: MultiThreading, MultiProcessing, Async/Await. Асинхронна взаємодія у FastApi
- Основні концепції взаємодії - багатопоточність, однопоточність, асинхронна та воркери
- Хто такий Gil. Чому всі про нього говорять, хоча ніхто не бачив
- EventLoop як із ним працювати
- Міграція синхронного коду в асинхронний
- uvloop
- lifespan
- Використання ipython в ассинзронному режимі
- Тестування асинхронних веб-сервісів з pyTest
Objective 3: Робота з базами даних
- Інтреграція SqlAlchemy + PostgresSql
- Підключаємо Alembic
- Асинхронна взаємодія з БД з використанням asyncpg (SqlAlchemy, DatabaseIo)
- Особливості реалізації асинхронної взаємодії в SqlAlchemy. Проблема асинхронного доступу до реляційних зв'язків в ORM
Objective 4: Авторизація запиту. Хендлер помилок
- Авторизація. Навіщо, для чого і як
- Авторизація з JWT-токеном
- Вбудовані механізми авторизації користувачів
- Помилки, обробка та призначення
- Створення користувацьких хендлерів помилок
Objective 5: Робота з No-Sql
- Redis - навіщо і для чого
- Підключаємо до проєкту
- Основи роботи з Redis
- Реалізація механізму кешування
- Асинхронні запити в Redis
Objective 6: Логування та запуск
Налаштування логування.
Модуль 2. Контейнеризація сервісу з використанням докера
Objective 1: Створення образу Docker для FastAPI
- Що таке Docker?
- Переваги Docker
- Встановлення Docker
- Підготовка вихідного коду
- Створення образу Docker і запуск проєкту
Objective 2: Запуск проєкту FastAPI в Docker за допомогою DockerCompose
- Що таке DockerCompose?
- Переваги DockerCompose
- Контейнеризуємо наш проєкт
- Безперервне постачання коду в контейнеризованих середовищах
Objective 3: Фонові завдання у FastApi
- Виконання фонових завдань у FastApi
- Інтеграція Celery (Глибоке занурення)
- Знайомство з Broker (RabbitMQ, ZabitMQ, Kafka)
Модуль 3. Міжсервісна взаємодія
Objective 1: Реалізація міжсервісної взаємодії та Створення інфраструктури з використанням контейнерів
- API і міжсервісна взаємодія.
- Протокол взаємодії - JSON, RPC, XML та екзотика
- Способи реалізації (http протокол, tcp/ip, gRPC)
- Від моноліту до мікросервісів із використанням технології контейнеризації
- Створення єдиної інфраструктури в контейнеризованих середовищах
- Що таке проксі-сервер (єдина точка входу)
- Створення простого проксі-сервера для локальної розробки
Objective 2: Асинхронна міжсервісна взаємодія
- Реалізація з використанням саб-клієнт на Aiohttp і httpX
- Особливості реалізації
Попередні вимоги
- Базові знання Python - розуміння синтаксису мови, роботи з функціями, класами, списками, словниками та основними бібліотеками
- Досвід роботи з веб-технологіями - HTTP, JSON
- Знання англ. мови на рівні читання технічної документації
Особливості курсу
- Допомога ментора
- Практика
- Сертифікат про проходження курсу
- Цвидкість проходження курсу залежить від вас
- Онлайн курс з форматом менторингу
Викладачі курсу
- Олексій Фрундін - Python Developer
- Костянтин Зівенко - Lead Software Engineer at ExSol LTD
Категории курса
Читайте нас в Telegram, чтобы не пропустить анонсы новых курсов.