Python для разработчика: учимся писать профессиональный код (PYTHON_PRO)
Кому следует посетить
Разработчикам, которые уверенно владеют базовым Python и хотят прокачать навыки: писать более оптимизированный код, работать с большими наборами данных, тестировать проекты и использовать асинхронность.
Предварительные требования:
Программирование на Python в рамках курса Программирование на языке Python. Базовый уровень (PYTHON_BASIC)
Цели курса
УМЕТЬ:
- работать с современными инструментами: аннотации типов, документация, тестирование
- работать с большими объёмами данных и оптимизировать память
- писать читаемый код с аннотациями и документацией
- проводить тестирование и проверять качество проектов
- применять асинхронность и многопроцессность в реальных задачах
ЗНАТЬ:
- устройство Python и его возможности
- как работать с большими данными
- принципы кеширования и хеширования для ускорения приложений
- подходы к написанию асинхронных и многопроцессных программ
- современные практики Python-разработки
Даты и регистрация
Онлайн тренинг
Очный формат
Гарантированные курсы
Гарантирован при получении Вашей заявки
Программа курса
Модуль 1. Современные инструменты Python
- Аннотации типов и их польза для больших проектов.
- Докстринги и документация по коду.
- Лучшие практики оформления кода.
Модуль 2. Функциональный Python и структуры данных
- Декораторы и принципы повторного использования кода.
- Лямбда-функции, map(), filter(), reduce().
- Генераторы списков и словарей.
- Продвинутые сортировки данных
- Стек, очередь и их практическое применение.
Модуль 3. Работа с данными и оптимизация
- Обработка больших наборов данных: подходы и ограничения.
- Введение в polars и обработку больших массивов данных
- Использование встроенных и внешних библиотек (например, itertools).
- Кеширование: зачем и где использовать (functools.lru_cache).
- Хеширование: принципы, применение, встроенные структуры (dict, set).
Модуль 4. Тестирование и надежность кода
- Основы модульного тестирования: unittest, pytest.
- Организация тестов в проекте.
Модуль 5. Асинхронность и многопроцессность
- Синхронные vs асинхронные задачи.
- Основы async/await и asyncio.
- Многопроцессность и multiprocessing.
- Обзор библиотек для асинхронной работы и распределённых вычислений.