Многие книги и курсы по Go рассказывают о многозадачности в стиле «вот горутина, вот канал, вот select — используйте на свое усмотрение». Это не слишком полезно: ведь главное в concurrent-программировании не чистое знание, а понимание и умение применять. Этот курс поможет освоить многозадачное программирование в Go на практических задачах. Они достаточно простые, чтобы решить одной страницей кода — и в то же время приближены к реальным рабочим задачам. Пройдя курс, вы освоите: - горутины и каналы; - композицию и конвейеры; - работу со временем; - отмену операций через контекст; - примитивы синхронизации; - паттерны многозадачности. Курс рассчитан на программистов, которые уже знают основы Golang: от базовых конструкций языка до интерфейсов и ошибок. Горутины и каналы при этом можно не знать — мы рассмотрим инструменты многозадачности с нуля. Поскольку курс рассчитан на опытных программистов, я выбрал формат изложения, который предпочитаю сам: краткий, емкий, с заданиями средней сложности. Возможно, он понравится и вам. Лекции письменные, видео нет. Я умею понятно объяснять сложные вещи, так что читать их приятно. Много примеров, нет сухой теории. В конце каждого модуля идет краткое резюме. Курс интерактивный. Большинство упражнений можно выполнять прямо в браузере. По каждой задачке есть эталонное решение с разбором. Курс пока готов на 60%, будет закончен в 2023 году. Цена будет расти. P.S. Если вы уже прошли курс «Go на практике», брать этот курс сейчас нет смысла. Дождитесь 100% готовности. Начальные требования Знание основ Golang: от базовых конструкций языка до интерфейсов и ошибок. Наши преподаватели - Антон Жиянов Разрабатываю опенсорс, веду курсы, пишу о программировании и данных. С удовольствием пишу софт и топлю за здравый смысл в разработке и жизни. Победитель конкурса авторов Хабра в номинации «просто о сложном». Спойлер: Программа курса Основы многозадачности 1 О курсе 2 Горутины 3 Каналы 1 4 Каналы 2 5 Композиция 6 Время 7 Контекст 8 Резюме Синхронизация 1 Группа ожидания 2 Гонки 3 Мьютексы 4 Пулы и события 5 Атомарные операции 6 Резюме Финал 1 Итоги