Kail
Организатор
Проверенный
Организатор
- Регистрация
- 09.04.2020
- Сообщения
- 353 752
- Реакции
- 32 522
- Монеты
- 1 191
- Оплачено
- 0
- Баллы
- 0
- #SkladchinaVip
- #1
[Слёрм] Асинхронное программирование на Python для джуниор-разработчиков. 2022
- Ссылка на картинку
Асинхронное программирование используется для высоконагруженных проектов и микросервисов. Его спрашивают на собеседованиях в технологически развитых компаниях, и оно открывает дорогу к работе в интересных проектах.
В Python асинхронный подход реализуется через Asyncio, который мы рассматриваем в этом курсе.
Каждый модуль - это полноценный проект, куда вы дописываете нужную функциональность. Дальше тесты автоматически проверяют взаимодействие всех компонентов проекта. Если ваше решение работает, вы успешно прошли модуль. Всё как на настоящей работе.
Кому подойдёт курс:
1. Выпускникам курсов по программированию
Вы собираетесь перейти в IT, прошли или проходите курс по программированию. Знание асинхронного подхода к разработке может стать вашим преимуществом на собеседованиях и выделит вас среди других выпускников.
2. Джуниор-разработчикам на Python
Вы работаете в компании на позиции джуна и не чувствуете прогресса. Зная асинхронное программирование, вы сможете перейти на более сложные и интересные задачи.
3. Мидлам, которые пока не изучили Asyncio
Asyncio — стандартная возможность Python. Тем, кто планирует развиваться в профессии и глубже погружаться в язык, рано или поздно придётся её освоить. Лучше рано.
Чему вы научитесь:
1. Разберётесь, как работает асинхронное программирование и где его лучше применять
2. Узнаете, чем отличается асинхронное выполнение задач от параллельного и какие типы «параллельности» существуют
3. Научитесь мыслить нелинейно и сможете продумывать более сложные архитектуры приложений
4. Узнаете best practices написания асинхронных приложений на Python
5. Получите опыт работы с микросервисами
6. Освоите стандартную python-библиотеку Asyncio
7. Изучите асинхронный веб-фреймворк Aiohttp
8. Научитесь асинхронно работать с базами данных Postgres, Mongo, RabbitMQ
9. Разберётесь, как решать типовые задачи, в которых используется асинхронность
Домашние задания с автопроверкой:
1. В ходе курса вы выполните 6 домашних заданий, в том числе напишете телеграм-бот и собственный Event Loop. ДЗ решаются на учебном виртуальном сервере с настроенным окружением — ничего не нужно искать, скачивать и устанавливать на свой компьютер.
2. Каждое домашнее задание подразумевает дописывание полноценного проекта. Вы не пишете обособленный кусок кода, а вписываете свой код в готовый проект. Дальше тесты автоматически проверяют взаимодействие всех компонентов проекта. Если ваше решение верное — оно пройдёт тестирование.
3. Такой подход к домашним заданиям тренирует насмотренность: вы видите, как устроен проект, как выглядит код, куда вы дописываете своё решение.
Программа:
Модуль 1 - Django vs Aiohttp
В Python асинхронный подход реализуется через Asyncio, который мы рассматриваем в этом курсе.
Каждый модуль - это полноценный проект, куда вы дописываете нужную функциональность. Дальше тесты автоматически проверяют взаимодействие всех компонентов проекта. Если ваше решение работает, вы успешно прошли модуль. Всё как на настоящей работе.
Кому подойдёт курс:
1. Выпускникам курсов по программированию
Вы собираетесь перейти в IT, прошли или проходите курс по программированию. Знание асинхронного подхода к разработке может стать вашим преимуществом на собеседованиях и выделит вас среди других выпускников.
2. Джуниор-разработчикам на Python
Вы работаете в компании на позиции джуна и не чувствуете прогресса. Зная асинхронное программирование, вы сможете перейти на более сложные и интересные задачи.
3. Мидлам, которые пока не изучили Asyncio
Asyncio — стандартная возможность Python. Тем, кто планирует развиваться в профессии и глубже погружаться в язык, рано или поздно придётся её освоить. Лучше рано.
Чему вы научитесь:
1. Разберётесь, как работает асинхронное программирование и где его лучше применять
2. Узнаете, чем отличается асинхронное выполнение задач от параллельного и какие типы «параллельности» существуют
3. Научитесь мыслить нелинейно и сможете продумывать более сложные архитектуры приложений
4. Узнаете best practices написания асинхронных приложений на Python
5. Получите опыт работы с микросервисами
6. Освоите стандартную python-библиотеку Asyncio
7. Изучите асинхронный веб-фреймворк Aiohttp
8. Научитесь асинхронно работать с базами данных Postgres, Mongo, RabbitMQ
9. Разберётесь, как решать типовые задачи, в которых используется асинхронность
Домашние задания с автопроверкой:
1. В ходе курса вы выполните 6 домашних заданий, в том числе напишете телеграм-бот и собственный Event Loop. ДЗ решаются на учебном виртуальном сервере с настроенным окружением — ничего не нужно искать, скачивать и устанавливать на свой компьютер.
2. Каждое домашнее задание подразумевает дописывание полноценного проекта. Вы не пишете обособленный кусок кода, а вписываете свой код в готовый проект. Дальше тесты автоматически проверяют взаимодействие всех компонентов проекта. Если ваше решение верное — оно пройдёт тестирование.
3. Такой подход к домашним заданиям тренирует насмотренность: вы видите, как устроен проект, как выглядит код, куда вы дописываете своё решение.
Программа:
Модуль 1 - Django vs Aiohttp
- Сравним Django и Aiohttp, поймем отличия
- Разберемся, когда следует применять Django, а когда – Aiohttp
- Сравним производительность Django и Aiohttp
- Разберемся, почему Aiohttp нельзя заменить Django 3.0 (c этой версии появилась поддержка асинхронности в Django)
- Поймем отличия CPU от IO bound операций
- Разберемся в python threading, поймем их особенность
- Рассмотрим способы реализовать многопоточность в Python (multiprocessing и Кооперативная многозадачность)
- Познакомимся с GIL, поймем зачем его добавили и почему еще не удалили
- Рассмотрим компоненты стандартной библиотеки asyncio и поймем как их применять на практике:
- Coroutines
- Tasks
- Synchronization Primitives
- Queues
- Научимся использовать клиент aiohttp для отправки запросов по протоколам http/https/web sockets/s3 при работе с сервисами:
- VK API (http, long polling). Первые шаги при написании VK бота
- Telegram API (http, long polling). Первые шаги при написании Telegram бота
- Биржевое API (web socket)
- Научимся непрерывно получать данные от сервера, без предварительного запроса
- Файловое API (s3). Научимся эффективно загружать большие файлы
- Разберемся, что такое асинхронные коннекторы и как их выбирать
- Научимся работать с различными базами данных асинхронно: Postgres, Mongo, RabbitMQ
- Научимся работать с компонентами aiohttp сервера:
- Handlers, routes и classview
- Middleware и авторизация
- Signals
- Разберемся, как решать типовые задачи, например:
- Двухстороннее передача данных с помощью web socket
- Эффективная загрузка файлов в s3 (stream)
- Создание фоновых задачи
- Разберемся, на чем работает асинхронное программирование в Python
- Поймем, что такое future и event loop, и реализуем свой собственный на генераторах
Зарегистрируйтесь
, чтобы посмотреть скрытый авторский контент.