Чему вы научитесь
- Вы научитесь выбирать соответствующие инструменты для написания сложных многозадачных решений.
- Научитесь создавать и управлять процессами для параллельного выполнения задач с максимально эффективным использованием вычислительных ресурсов.
- Разберетесь в сложной теме межпроцессного взаимодействия, начиная от использования разделяемой памяти до организации совместной работы удаленных процессов по сети.
- Закрепите теорию практическими задачами по созданию и применению процессов в Python.
- Научитесь использовать библиотеки multiprocessing, concurrent.futures, ctypes, struct, array.
О курсе
Единственный курс на stepik по многопроцессному программированию с практическими задачами.
Курс является второй частью большой темы реализации многозадачных решений в python и полностью раскрывает процессную многозадачность.
На курсе Вас ждут:
- теоретические основы, подробный разбор официальной документации;
- все необходимые пояснения и примеры использования каждой функции, каждого метода;
- ссылки на дополнительные материалы различных источников на русском и английском языках;
- множество домашних самостоятельных работ;
- тесты и интерактивные задачи на программирование;
- итоговый учебный проект, позволяющий применить новые полученные знания в задаче по агрегации рыночных данных ценных бумаг, используя реальные API финансовых сервисов.
Здесь нет:
- воды и сгенерированного текста chatGPT;
- переизбытка задач типа "угадаек";
- видео уроков. Вся теория подается в текстовом виде. Ссылки на видео только в примечаниях в качестве дополнительного материала;
- излишне простых задач, которые скучно решать.
Курс позволит освоить сложную тему многопроцессного программирования в максимально сжатый срок. Экономьте свое время - свой самый ценный ресурс!
Если у Вас возникли проблемы с оплатой или появились вопросы по курсу, напишите мне пожалуйста в телеграм.
Для кого этот курс
Курс будет полезен: - любопытным учащимся, которые уже прошли базовые курсы по python и хотят идти дальше; - людям, кто уже знаком с теорией многопроцессного программирования, но хотел бы закрепить ее на практических задачах; - студентам, которые уже прошли похожие курсы по этой теме, но остались недовольны полным отсутствием заданий на закрепление материала. А, как известно, теория без практики быстро вылетает из головы; - разработчикам, которым необходимо повысить производительность своих решений за счет распараллеливания вычислительных задач; - специалистам в области машинного обучения. Многопроцессность позволяет повысить эффективность обучения и не редко используется в специализированных фреймворках. Например в PyTorch используется модуль torch.multiprocessing.
Начальные требования
Теория и практические задачи курса написаны с расчетом того, что учащиеся знают базовый синтаксис языка python и прошли первую часть курса многозадачности в python, посвященную многопоточному программированию. Тогда курс будет пройти проще. Но если Вы не знакомы с многопоточным программированием - в некоторых уроках придется немного погуглить самостоятельно и, возможно, задать уточняющий вопрос в комментариях.
Наши преподаватели
Как проходит обучение
Обучение включает в себя:
- Теорию в виде текста, а также ссылки на материал для дополнительного самостоятельного изучения. Учащийся сам решает "как глубоко ему копать".
- Домашние задания для самостоятельной работы. Ведь самое лучшее усвоение знаний происходит при самостоятельной исследовательской работе.
- Практические уроки в виде задач с автоматической проверкой кода-решения и различных опросников и угадаек.
- Поддержку преподавателя, некоторые сложные задачи решаются авторским рецензированием.
- Итоговый учебный проект позволяющий применить новые полученные знания в условиях работы с реальными сервисами на реальных данных.
Программа курса
Сертификат
Входит в 1 программу
Что вы получаете
- Вы получаете возможность закрепить полученную теорию применения библиотек multiprocessing, concurrent.futures, ctypes, struct, array на практических учебных задачах, набить руку.
- Курс даст и укрепит необходимую базу и подготовит Вас к дальнейшему профессиональному созданию сложных многозадачных решений с использованием многопроцессности.