Обучение длится 4 месяца
Автор: Сурен Хоренян
16 490
21 990
1 374
/мес
Курс на Merion academy
Python Advanced. Продвинутый курс [2024]

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

Кому подойдет курс:

1. Python-разработчик

  • Узнайте, что у Python под капотом: метаклассы, генераторы, декораторы, потоки (threading) и многопоточность (multiprocessing) для быстрого продвижения к уровню middle.​

2. Data Scientist

  • Python отлично подходит для дата-сайентистов благодаря обширной экосистеме библиотек и фреймворков.
  • FastAPI и SQLAlchemy будут особенно полезны для создания API и работы с базами данных в ваших проектах.​

3. Сменить профессию

  • Для Frontend разработчика - повышение рыночной стоимости, Backend разработчика - расширение скиллсета и кругозора, а для QA-инженеры - отличный шанс перейти в автоматизаторы.​

Содержание:

Блок 1 - Углубленная работа с декораторами

  • Вводное занятие: Сравнение multithreading и multiprocessing
  • Вложенные декораторы
  • Классы-декораторы и декораторы классов

Блок 2 - Сложные простые типы

  • Строки и байты - в чем разница. Кодировки.
  • Числа с плавающей точкой и проблемы, которые они приносят
  • Тестирование по блоку 1 и 2

Блок 3 - Функциональное программирование в Python и его минусы

  • Сравнение помощников map, filter с comprehensions. Лямбда функции
  • Рекурсия, стек, переполнение стека, хвостовая рекурсия

Блок 4 - Генераторы и итераторы

  • Как связаны итераторы и генераторы
  • Создание генератора
  • Создание итератора
  • Генераторы в обратную сторону (передача данных в генератор), корутины

Блок 5 - Знакомство с асинхронной работой (asyncio)

  • Введение в асинхронное программирование. Зачем нужно асинхронное программирование. Группы задач
  • Асинхронные запросы в сеть
  • Цикл событий альтернативный (сторонний) цикл
  • Асинхронное взаимодействие с файлами
  • Тестирование по блоку 3, 4 и 5

Блок 6 - Классы изнутри

  • Метаклассы
  • "Протоколы. Абстрактные классы
  • Дескрипторы
  • Слоты в классах
  • Как работает super
  • Сокрытие имени (name mangling)

Блок 7 - Работа с ссылками, внимание к памяти

  • Как работает сборщик мусора
  • Сильные и слабые ссылки

Блок 8 - Аннотации типов. Системы контроля зависимостей. Интроспекция

  • Как описывать аннотации типов, зачем они нужны
  • Работа с mypy
  • Системы контроля зависимостей
  • Интроспекция, генерация новой сигнатуры
  • Тестирование по блоку 6, 7 и 8

Блок 9 - Тестирование

  • Unittest
  • Покрытие кода (coverage)
  • Pytest, плагины
  • Фикстуры
  • Параметризация и метки
  • Конфигурация тестов

Блок 10 - Очереди задач

  • Встроенные очереди задач
  • Асинхронные очереди задач
  • Сервисы для очередей задач. Celery. RabbitMQ
  • Интроспекция, генерация новой сигнатуры
  • Тестирование по блоку 9 и 10

Блок 11 - Профилирование

  • Что такое профилирование и зачем нужно. Инструменты для профилирования
  • Блок 12 - Ускорение обработки задач
  • Threading, GIL
  • Multiprocessing

Блок 12 - Ускорение обработки задач

  • Threading, GIL
  • Multiprocessing

Блок 13 - Низкий уровень

  • Компиляция кусков кода. Чтение и анализ байт-кода. Как работает виртуальная машина Python
  • Тестирование по блоку 11, 12 и 13

Блок 14 - Работа с базой данных через SQLAlchemy

  • Знакомство с SQLAlchemy 2.0Лекция
  • Асинхронная работа с базой данных на SQLAlchemy

Блок 15 - Веб-разработка на FastAPI

  • Знакомство с FastAPI
  • FastAPI настройки git: commit, remote, push
  • Работа с базой данных через SQLAlchemy в веб-приложении
  • Развитие приложения на FastAPI
  • Взаимодействие между приложениями
  • Тестирование по блоку 14 и 15

Финальное тестирование

  • Финальное тестирование
Дата последнего обновления: 9 апреля 2024

Темы

Другие курсы

Аналитик с нуля. Старт в профессии
Аналитик с нуля. Старт в профессии
Автор: Ольга Пономарева
Excel для работы с нуля
Excel для работы с нуля
Авторы: Марк Сысоев, Данила Елистратов
Специалист по компьютерному зрению дронов и нейросетям
Специалист по компьютерному зрению дронов и нейросетям
Авторы: Группа авторов
Системный аналитик. Продвинутый
Системный аналитик. Продвинутый
Авторы: Группа авторов
Подробнее
138 000
16 500
/мес
Профессия Frontend-разработчик
Профессия Frontend-разработчик
Автор: Михаил Непомнящий
-41%
Продвинутый python: заряди свои батарейки
Продвинутый python: заряди свои батарейки
Автор: Артем Егоров
Подробнее
1 919
3 199
-30%
Автоматизированное тестирование на Python [2024]
Автоматизированное тестирование на Python [2024]
Автор: Дмитрий Ерёмин
Подробнее
12 150
17 500
1 012
/мес
-21%
Тестировщик ПО: основы QA с нуля [2024]
Тестировщик ПО: основы QA с нуля [2024]
Автор: Гульшат Афлетунова
Подробнее
12 150
15 500
1 012
/мес
-25%
Python - программист с нуля [2024]
Python - программист с нуля [2024]
Автор: Сурен Хоренян
Подробнее
16 490
21 990
1 374
/мес
Назад
Смотреть дальше