Администрирование и программирование [Devman] Александр Зеленяк - Асинхронный Python (2020)

Тема в разделе "Администрирование и программирование", создана пользователем Jupiter, 20 ноя 2020.

  1. Jupiter

    Jupiter Команда форума Модератор

    [Devman] Александр Зеленяк - Асинхронный Python (2020)
    i2YXBZa
    Модуль из 9 уроков. Практический курс
    (практика и еще раз практика)

    В вакансиях для Python программистов часто требуют асинхронность. Эта технология упрощает архитектуру ПО и позволяет создавать сложные проекты, не теряя в скорости разработки. Асинхронность — это светлое будущее веба.

    Пока мало кто умеет писать асинхронный код. На рынке труда такие программисты в дефиците: они легко находят работу и просят больше денег. Вы можете стать одним из них. Познакомьтесь с технологиями, освойте best-practices и дополните своё резюме асинхронными проектами. Все что нужно включено в курс.

    Содержание:

    Урок 1: Делаем игру про космос

    В этом уроке вы напишете свою консольную игру. Будем летать на ракете и любоваться звёздным небом. А заодно познакомимся с асинхронностью.

    Свой игровой движок
    Мы не будем использовать готовые движки, а напишем свой. Если вы захотите заменить ракету на динозаврика, а астероиды на кактусы — вы сделаете это в несколько строк кода.

    Научитесь писать корутины
    Корутины — это функции из мира асинхронности. Как обычный код состоит из функций, так и асинхронный собирается из корутин. Без них никуда.

    Урок 2: Сквозь мусор к звёздам


    Игра получилась расслабляющей, но любители экшена назовут её скучной. Пора добавить режим с пушками: взрывы, астероиды, спутники, горящие куски обшивки. В такой игре уже не заскучаешь.

    Дирижируйте корутинами
    В предыдущем уроке вы писали только асинхронные функции и вызывали их. Здесь же вы хлебнёте корутин по полной: одна корутина создаёт другие корутины, а другая их уничтожает ...

    Будет чем хвастаться
    Друзьям не похвастаешься сортировкой или переворотом бинарного дерева. А вот игрой про космос, да ещё со звуком — уже можно!

    Урок 3: А скинешь фоточки?


    Что происходит, когда вы нажимаете кнопку «Скачать» в Дропбоксе? Как ему удаётся в одно мгновение сжать гигабайты в архив и начать загрузку на ваш компьютер? В этой задаче вы сами напишете код для кнопки «Скачать», узнаете всё на собственном опыте.

    Django? Flask? А может aiohttp?
    В этой задаче вы поднимете свой сервер на aiohttp. Это самый популярный фреймворк с поддержкой асинхронного кода.

    Новое о старом: HTTP
    А вы знали, что HTTP-ответ необязательно готовить целиком? В этой задаче вы будете архивировать файлы «на лету», по кусочкам, и тут же отдавать эти кусочки клиенту на скачивание.

    Урок 4: Подключаемся к подпольному чату


    В этом уроке вы будете писать клиент для анонимного чата. Да, чат будет о Майнкрафте, и очень секретный. Коды для Майнкрафта — дело серьёзное, такое в обычных чатах не обсуждают.

    Узнайте, как делают чаты
    Чаты — это не так-то просто! Сообщения должны приходить мгновенно, а если вдруг отключится интернет, то приложение должно само переподключиться.

    Сокеты! Наконец-то!
    В этом уроке вы станете одним из избранных, тем самым, кто знает о сокетах. Они помогут развить такие скорости, о которых c HTTP нельзя и мечтать.

    Урок 5: Помогаем клубу анонимных геймеров


    Подключиться к чату — полдела. Куда сложнее сделать полноценный чат-клиент, удобный рядовому пользователю.

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

    Жонглируйте очередями
    Очереди — это краеугольный камень в мире асинхронного кода. С их помощью корутины могут обмениваться данными, даже если работают параллельно.

    Урок 6: Фильтруем Интернет со скоростью света


    Вам надоели фейковые новости в интернете? Теперь есть шанс с ними поквитаться. Вы напишете краулер, который пройдет по сайтам и составит свой рейтинг желтушности. Благодаря асинхронности он наберет огромную скорость, ограниченную лишь сетевым соединением.

    Сделайте поискового робота
    Поисковые роботы Гугл и Яндекс безустали парсят сайты и ранжируют страницы по популярности. Вы сделаете то же самое. Если смог Сергей Брин, чем вы хуже?

    Блесните знаниями в тусовке программистов
    Все слышали про магические event loop и корутины, но мало кто с ними по-настоящему работал. Вы будете одним из немногих, кто знает о чем говорит.

    Урок 7: Следим за автобусами


    Вы знали, что на общественном транспорте установлены GPS датчики? Их координаты можно узнать и отобразить на карте в браузере. Но вы сделаете больше — покажете перемещение транспорта в реальном времени.

    Как Яндекс Транспорт, только свой
    В этом уроке вы загляните под капот известного сервиса и набъете те же шишки, что и программисты Яндекса.

    20 тысяч автобусов онлайн
    Чтобы автобусы перемещались по карте, нужны не только координаты, но и постоянное их обновление. Более того, обновлять придется положение сразу 20 тысяч автобусов. Узнайте как сделать это надёжно, без лагов и зависаний.

    Урок 8: Рассылаем СМС для МЧС


    Здесь вы построите свой сервис по рассылке СМС сообщений с предупреждением о непогоде. Да, прямо настоящие СМС, которые придут на ваш телефон!

    Скрестите trio и asyncio
    asyncio и trio — это две библиотеки для написания асинхронного кода. Они такие же разные, как Django и Flask: то, что написано для asyncio на trio не запустится. В этом уроке вы всё-таки запустите библиотеки для asyncio на trio.

    Почувствуйте силу Quart
    Quart — это клон Flask, только асинхронный и с крутыми фичами. Вебсокеты "из коробки", поддержка как asyncio, так и trio. Уже интересно опробовать такого монстра в деле?

    Урок 9: Добиваемся стабильности


    В прошлом уроке накопилось много проблем с кодом, и это только те, которые видны невооружённым глазом. А что, если какие-то из них вы ещё не нашли? В этом уроке вы покончите с этой неопределённостью.

    Напишите тесты к асинхронному коду
    Писать тесты нынче мастхэв для больших проектов на Python. Появился даже подход к программированию: Test Driven Development. В этом уроке вы напишете несколько текстов к своему коду и пощупаете что же это такое.

    Попробуйте Publisher/Subscriber в aioredis
    Publisher/Subscriber — это паттерн проектирования, когда какая-то часть кода может создавать записи в БД, а другая вечно ждёт обновлений. За счёт этого можно сделать общение с БД более экономным: слать запросы только тогда, когда Publisher говорит, что появилось что-то новенькое.

    ПРОДАЖНИК
    Не скрытое содержимое:
    https://dvmn.org/modules/async-python/
    СКАЧАТЬ
    Скрытый текст:
    **Скрытый текст: Скрытый текст могут просматривать только пользователи следующих групп: VIP, Администратор, Модератор.**
     
    Xanders нравится это.

Похожие темы:
  1. BoomInfo
    Ответов:
    0
    Просмотров:
    455
  2. BoomInfo
    Ответов:
    0
    Просмотров:
    350
  3. BoomInfo

    Администрирование и программирование [Олег Молчанов] Python ООП (2020)

    Ответов:
    1
    Просмотров:
    448
  4. BoomInfo
    Ответов:
    0
    Просмотров:
    228
  5. BoomInfo

    Администрирование и программирование [Devman] Знакомство с Python (2020)

    Ответов:
    0
    Просмотров:
    411
Загрузка...