Подробнее
Что нужно для старта
- Основы Python: Вы должны быть знакомы с основами языка Python, включая синтаксис, типы данных, операторы, циклы и функции. Это необходимо, поскольку курс предполагает, что вы уже знаете основы и готовы перейти к более сложным темам.
- Мотивация и готовность к обучению: Асинхронное программирование может быть сложной темой, и вам потребуется время и усилия для его освоения. Важно быть готовым к обучению и иметь желание развиваться в этой области.
Что вы получите
- Понимать основные концепции и принципы асинхронного программирования;
- Применять асинхронное программирование с использованием библиотеки asyncio;
- Использовать ключевые слова async и await для написания асинхронного кода;
- Решать распространенные проблемы асинхронного программирования, такие как гонки и взаимные блокировки и др;
- Научитесь мыслить нелинейно и сможете продумывать более сложные архитектуры приложений;
- Разберётесь, как решать типовые задачи, в которых используется асинхронность;
- Применять полученные знания на практике через реальные проекты;
- Применять асинхронные концепции для создания масштабируемых и отказоустойчивых систем;
- Оптимизировать производительность вашего кода с помощью асинхронных паттернов и инструментов;
- Понимать преимущества и ограничения асинхронного подхода и выбирать наиболее подходящие решения для конкретных задач;
- Быть уверенным в написании асинхронного кода и готовым применять эти навыки в реальных проектах;
Для кого этот курс
- Курс идеально подходит как для новичков, так и для тех, кто уже знаком с asyncio. Он содержит огромное количество актуальной, полезной и нужной информации, которая поможет вам освоить асинхронный подход в программировании, который становится все более важным и востребованным в современном IT.
Программа курса
- Введение
- Введение в асинхронность
- Основные преимущества asyncio
- IO bound и CPU bound
- В каких задачах полезно асинхронное программирование
- В каких задачах бесполезно асинхронное программирование
- GIL
- Основные элементы asyncio
- Coroutines / Корутины
- Task / Задачи
- Future / Футуры
- Awaitable объекты
- Ключевое слово await
- Цикл событий (event loop)
- Основные методы asyncio
- Запуск цикла событий
- Асинхронный сон
- Создание задач
- Создание задач, часть 2
- Одновременное выполнение корутин
- Предотвращаем "зависание" корутин
- Ожидание группы корутин
- Получение результатов от группы задач по мере завершения
- Создаём новый цикл событий
- Устанавливаем цикл событий по умолчанию
- Получаем ссылку на текущий цикл событий
- Получаем доступ к текущему циклу событий
- Запуск блокирующих функций в отдельном потоке
- Контекстные переменные
- Введение в задачи / task
- Основные методы управления задачами / task
- Проверка статуса задачи
- Получение результата выполнения задачи
- Работа с текущей задачей
- Получение всех задач в цикле событий
- Установка и получение имени задачи
- Работа с исключениями внутри задачи
- Работа с отменой задач
- Получение информации о состоянии цикла событий и корутин
- Работа с асинхронным стеком вызова
- Работа Сallback функции
- Защита корутины от отмены
- Работа с группой задач TaskGroup()
- Решаем задачи
- async with
- async for
- Состояние гонки
- Атомарность операций
- Мьютекс (mutex)
- Решаем проблему состояния гонки
- Deadlock
- Введение в очереди
- Очередь FIFO
- Очередь LIFO
- Очередь Priority
- Введение в примитивы
- Защита ресурса от одновременного доступа
- Ожидание событий для синхронизации доступа
- Синхронизация задач
- Принцип простого семафора
- Принцип ограниченного семафора
- Реализация барьера для защиты одновременного доступа
- Введение в асинхронное чтение файлов
- Aiofiles введение
- Основные методы и параметры аiofiles
- Методы асинхронного файлового объекта
- Контроль знаний
- Основные методы аiofiles.os
- Контроль знаний
- Асинхронная работа с CSV-файлами
- Решаем задачи
- Введение в aiohttp
- Методы клиентской сессии, часть 1
- Методы клиентской сессии, часть 2
- Жизненный цикл HTTP-запроса
- Работа с Cookies
- Работа с прокси
- HTTP заголовки
- Основы работы с исключениями в aiohttp
- Решаем задачи
01Начало
- Введение
02Основы асинхронного программирования
- Введение в асинхронность
- Основные преимущества asyncio
- IO bound и CPU bound
- В каких задачах полезно асинхронное программирование
- В каких задачах бесполезно асинхронное программирование
- GIL
03Awaitable объекты
- Основные элементы asyncio
- Coroutines / Корутины
- Task / Задачи
- Future / Футуры
- Awaitable объекты
- Ключевое слово await
- Цикл событий (event loop)
04Основы работы с Asyncio
- Основные методы asyncio
- Запуск цикла событий
- Асинхронный сон
- Создание задач
- Создание задач, часть 2
- Одновременное выполнение корутин
- Предотвращаем "зависание" корутин
- Ожидание группы корутин
- Получение результатов от группы задач по мере завершения
- Создаём новый цикл событий
- Устанавливаем цикл событий по умолчанию
- Получаем ссылку на текущий цикл событий
- Получаем доступ к текущему циклу событий
- Запуск блокирующих функций в отдельном потоке
- Контекстные переменные
05Работа с задачами / task
- Введение в задачи / task
- Основные методы управления задачами / task
- Проверка статуса задачи
- Получение результата выполнения задачи
- Работа с текущей задачей
- Получение всех задач в цикле событий
- Установка и получение имени задачи
- Работа с исключениями внутри задачи
- Работа с отменой задач
- Получение информации о состоянии цикла событий и корутин
- Работа с асинхронным стеком вызова
- Работа Сallback функции
- Защита корутины от отмены
- Работа с группой задач TaskGroup()
- Решаем задачи
06Асинхронные конструкции
- async with
- async for
07Проблемы синхронизации
- Состояние гонки
- Атомарность операций
- Мьютекс (mutex)
- Решаем проблему состояния гонки
- Deadlock
08Работа с очередями в Asyncio
- Введение в очереди
- Очередь FIFO
- Очередь LIFO
- Очередь Priority
09Базовые примитивы синхронизации Asyncio
- Введение в примитивы
- Защита ресурса от одновременного доступа
- Ожидание событий для синхронизации доступа
- Синхронизация задач
- Принцип простого семафора
- Принцип ограниченного семафора
- Реализация барьера для защиты одновременного доступа
10aiofiles
- Введение в асинхронное чтение файлов
- Aiofiles введение
- Основные методы и параметры аiofiles
- Методы асинхронного файлового объекта
- Контроль знаний
- Основные методы аiofiles.os
- Контроль знаний
- Асинхронная работа с CSV-файлами
- Решаем задачи
11aiohttp
- Введение в aiohttp
- Методы клиентской сессии, часть 1
- Методы клиентской сессии, часть 2
- Жизненный цикл HTTP-запроса
- Работа с Cookies
- Работа с прокси
- HTTP заголовки
- Основы работы с исключениями в aiohttp
- Решаем задачи
Отзывы о курсе
Оставьте отзыв
Расскажите о качестве обучения, поддержке и результате. Это поможет другим выбрать организацию осознанно.
Оставьте заявку
Консультант ответит на вопросы о курсе «Асинхронный Python» и поможет разобраться в деталях обучения.
Нажимая кнопку, вы даете согласие на обработку персональных данных
Информация обновлена 12 августа 2026 г.

Stepik 


















