Чему вы научитесь
- Вы получите комплексное понимание многопроцессного программирования — от основ до архитектурных решений.
- Вы изучите стратегию выбора инструментов. Научитесь проводить анализ задачи и выбирать оптимальное решение для её реализации: Process, Pool, ProcessPoolExecutor или их комбинацию. Вы поймете фундаментальные различия и области применения модулей multiprocessing, concurrent.futures и threading в реальных проектах.
- Вы глубоко погрузитесь в процессы и межпроцессное взаимодействие. Освоите полный контроль над созданием, запуском и жизненным циклом процессов. Вы изучите все аспекты межпроцессного взаимодействия: от базовых механизмов с Value, Array и Queue до продвинутых тем, таких как работа с разделяемой памятью через ctypes и struct, а также организация сетевого взаимодействия между удалёнными процессами.
- Вы научитесь обеспечивать надежность и эффективность. Поймете и научитесь применять механизмы синхронизации, такие как Lock, Semaphore, Event и Barrier, для написания безопасного и предсказуемого кода. Вы освоите стратегии отладки и обработки исключений в параллельном коде. Вы научитесь оптимизировать потребление ресурсов, избегать утечек памяти и эффективно управлять числом процессов.
- Вы освоите логирование для многопроцессных приложений. Познакомитесь с библиотекой logging, после чего научитесь решать специфические проблемы логирования в параллельных программах. Вы поймете проблемы конкурентного доступа к файлам и особенности наследования логгеров в дочерних процессах. Вы реализуете надёжное и эффективное решение для записи логов из всех процессов в один общий файл с помощью обработчиков QueueHandler и QueueListener.
- Практика — ключ к успешному обучению! Вы закрепите каждую тему на практических задачах и домашних работах. Итогом курса станет реализация финального проекта по созданию системы для агрегации финансовых данных через API, где вы комплексно примените все изученные техники.
О курсе
Курс является второй частью большой темы реализации многозадачных решений в Python и полностью раскрывает процессную многозадачность.
На курсе Вас ждут:
- теоретические основы, подробный разбор официальной документации;
- все необходимые пояснения и примеры использования каждой функции, каждого метода;
- ссылки на дополнительные материалы различных источников на русском и английском языках;
- множество домашних самостоятельных работ;
- тесты и интерактивные задачи на программирование;
- итоговый учебный проект, позволяющий применить новые полученные знания в задаче по агрегации рыночных данных ценных бумаг, используя реальные API финансовых сервисов.
Здесь нет:
- воды и сгенерированного текста chatGPT;
- переизбытка задач типа "угадаек";
- видео уроков. Вся теория подается в текстовом виде. Ссылки на видео только в примечаниях в качестве дополнительного материала;
- излишне простых задач, которые скучно решать.
Курс позволит освоить сложную тему многопроцессного программирования в максимально сжатый срок. Экономьте свое время - свой самый ценный ресурс!
По мере обновления официальной документации и выхода новых версий Python, этот курс тоже будет обновляться. Разделы по Python 3.14 уже доступны для изучения.
Если у Вас возникли проблемы с оплатой или появились вопросы по курсу, напишите мне пожалуйста в телеграм.
Для кого этот курс
Начальные требования
Теория и практические задачи курса написаны с расчетом того, что учащиеся знают базовый синтаксис языка python и прошли первую часть курса многозадачности в python, посвященную многопоточному программированию. Тогда курс будет пройти проще. Но если Вы не знакомы с многопоточным программированием - в некоторых уроках придется немного погуглить самостоятельно и, возможно, задать уточняющий вопрос в комментариях.
Наши преподаватели
Как проходит обучение
Обучение включает в себя:
- Теорию в виде текста, а также ссылки на материал для дополнительного самостоятельного изучения. Учащийся сам решает "как глубоко ему копать".
- Домашние задания для самостоятельной работы. Ведь самое лучшее усвоение знаний происходит при самостоятельной исследовательской работе.
- Практические уроки в виде задач с автоматической проверкой кода-решения и различных опросников и угадаек.
- Поддержку преподавателя, некоторые сложные задачи решаются авторским рецензированием.
- Итоговый учебный проект позволяющий применить новые полученные знания в условиях работы с реальными сервисами на реальных данных.
Программа курса
Сертификат
Входит в 3 программы
Что вы получаете
- Вы получаете возможность закрепить полученную теорию применения библиотек multiprocessing, concurrent.futures, ctypes, struct, array на практических учебных задачах, набить руку.
- Курс даст и укрепит необходимую базу и подготовит Вас к дальнейшему профессиональному созданию сложных многозадачных решений с использованием многопроцессности.