Онлайн-курс «Асинхронное программирование» | robot_dreams
  • онлайн-курс
  • 12 занятий
  • курсовой проект

АСИНХРОННОЕ ПРОГРАММИРОВАНИЕ

Освойте подходы асинхронного программирования на Python для разработки быстрых и эффективных программ.

Сергей Руських

13+ лет опыта в разработке

Lead Python Software Engineer в SoftServe

про курс

  • Продолжительность:

    12 занятий

  • Курсовой проект:

    НАБОР СЕРВИСОВ ДЛЯ РАБОТЫ С ДАННЫМИ

Овладеете модулем asyncio в Python и научитесь создавать веб-сервисы с фреймворком FastAPI и библиотекой SQLAlchemy. По итогам курса создадите набор сервисов для работы с данными, который добавите в портфолио, и сможете имплементировать асинхронные решения в свою работу.

В ПРОГРАММУ КУРСА ВХОДЯТ

01

КЕЙС В ПОРТФОЛИО

Создадите набор сервисов, который будет выгружать базу данных общеизвестных уязвимостей информационной безопасности (CVE), сохранять ее и возвращать пользователю через API-запрос.

02

ИНТЕГРАЦИЯ И ОПТИМИЗАЦИЯ БД

Получите опыт использования асинхронных библиотек и решения проблем обработки, выгрузки и сохранения данных в базу с применением asyncio и multiprocessing.

03

РАЗРАБОТКА ВЕБ-СЕРВИСОВ

Научитесь разработке веб-сервисов с использованием FastAPI и SQLAlchemy. Узнаете, как решать и избегать проблем применения синхронных и асинхронных подходов.

04

АСИНХРОННОЕ ПРОГРАММИРОВАНИЕ В PYTHON

Освоите синхронный и асинхронный подходы программирования на Python. Получите необходимые знания об asyncio и Event Loop. Разберетесь с примитивами синхронизации и race conditions.

 

для кого

  • Developers

    Чтобы разобраться в асинхронном программировании на практике, овладеть новыми фреймворками и библиотеками и оптимизировать производительность своих высоконагруженных приложений.

  • Tech/Team Leads

    Чтобы применять асинхронные техники в работе и создавать высокопроизводительные и масштабируемые программы, направляя команды на эффективное использование ресурсов.

  • DevOps, Architects, QA Automation Engineers

    Чтобы получить навыки для повышения производительности в микросервисах, снижения требований к инфраструктуре, автоматизации CI/CD-процессов и эффективного масштабирования тестов.

roadmap курса

 
icon
Разбираетесь с Event Loop, используете модуль asyncio
 
 
icon
Осваиваете асинхронное программирование
 
 
icon
Применяете асинхронные подходы для баз данных
 
 
icon
Разрабатываете веб-сервисы с FastAPI и SQLAlchemy
 

лектор

Сергей Руських

Lead Python Software Engineer в SoftServe
13+ лет опыта в разработке

  • 10 лет использует Python для разработки веб-сервисов и систем обработки и выгрузки данных. Работал в Takeoff Technologies, Ender Turing, Wargaming

  • имеет опыт в таких сферах, как E-commerce, автоматизация и роботизация складских решений, программное обеспечение для колл-центров, медиареклама

  • соорганизатор LvivPy (Lviv Python Community) и Ukraine Python Community

  • докладчик на конференциях PyConUA и LvivPy

Программа

  • 01 занятие
    24.07 18:30

    Знакомство с асинхронным программированием

    • Разберете разницу между асинхронным и синхронным подходами в программировании
    • Узнаете, когда можно использовать асинхронный подход
    • Поймете, что такое coroutine и subroutine, thread, process
  • 02 занятие
    29.07 18:30

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

    • Ознакомитесь с основными примитивами и объектами asyncio, разберете способы их использования
    • Узнаете, что такое awaitable-объекты
  • 03 занятие
    31.07 18:30

    Асинхронные приложения и Event Loop

    • Поймете, как влияют блокирующие и неблокирующие операции на работу сетевых приложений
    • Научитесь применять asyncio для написания сетевого сервиса
    • Разберетесь, как Event Loop использует низкоуровневый функционал системы
  • 04 занятие
    05.08 18:30

    Расширенные возможности асинхронного программирования

    • Поймете, что такое race conditions и как это может повлиять на работу программ
    • Узнаете, какие примитивы синхронизации существуют для asyncio
    • Научитесь тестировать асинхронный код, используя pytest
  • 05 занятие
    07.08 18:30

    Воркшоп. Работа с CPU-bound задачами с асинхронным подходом

    • Будете понимать, как асинхронные подходы можно использовать для обработки данных
    • Научитесь применять MapReduce-подход для обработки данных
    • Ознакомитесь с подходом и инструментами для анализа производительности программ
  • 06 занятие
    12.08 18:30

    Асинхронный доступ к базе данных

    • Узнаете, как запустить PostgreSQL в докер-контейнеры
    • Разберете разницу между асинхронным и синхронным драйвером для базы данных
    • Рассмотрите, как подключить и делать запросы с использованием asyncpg, SQLAlchemy, Alembic
    • Поймете преимущества применения асинхронного подхода для хранения данных
  • 07 занятие
    14.08 18:30

    Разработка асинхронных HTTP-сервисов

    • Разберете разницу между протоколами WSGI & ASGI
    • Поймете, в каких случаях ASGI будет быстрее
  • 08 занятие
    19.08 18:30

    FastAPI и асинхронное программирование

    • Узнаете, как написать web-сервис с использованием FastAPI + SQLAlchemy
    • Ознакомитесь с функционалом и возможностями FastAPI
  • 09 занятие
    21.08 18:30

    Асинхронные коммуникации между сервисами

    • Поймете, какие синхронные и асинхронные коммуникации используются при построении микросервисной архитектуры
    • Узнаете, когда применять тот или иной подход
    • Будете понимать разницу между очередями и потоками
  • 10 занятие
    26.08 18:30

    Q&A-сессия с лектором

    • Разберете свои вопросы по курсовому проекту на Live-сессии с лектором
  • 11 занятие
    28.08 18:30

    Подготовка к техническому интервью

    • Будете знать, какие вопросы задают рекрутеры, и подготовитесь к собеседованию
  • 12 занятие
    02.09 18:30

    Защита курсовых работ

    • Представите курсовой проект коллегам

регистрация

Освойте разработку с применением асинхронных подходов и улучшайте свои проекты.

 
 
 
Регистрируясь, вы соглашаетесь с условиями договора-оферты и политикой конфиденциальности.