Go — уникальный язык. Простой до примитивности, но с большой и продуманной стандартной библиотекой. Статически типизирован, но отлично подходит для небольших утилит. Достаточно низкоуровневый, чтобы возиться с байтиками, но достаточно высокоуровневый, чтобы заниматься асинхронщиной без головной боли.
Этот курс для тех, кто хорошо знает Python, JS или PHP (или любой другой язык) и хочет быстро освоить Go, чтобы начать применять его на работе или в личных проектах. Мы не будем тратить время на объяснения «что такое переменная», «как работает цикл» и решение бессмысленных упражнений типа «что напечатает функция». Вместо этого изучим язык на небольших практических задачках.
Поскольку курс рассчитан на опытных программистов, я выбрал формат изложения, который предпочитаю сам: краткий, емкий, с заданиями средней сложности. Возможно, он понравится и вам.
Пройдя курс, вы освоите:
- Основы языка
- Массивы и карты, функции и указатели, структуры и методы, интерфейсы, работа с ошибками.
- Чистый код
- Пакеты и модули, тесты, бенчмарки, профайлер.
- Многозадачность
- Горутины, каналы, композиция, таймеры, контекст, синхронизация.
- Стандартную библиотеку
- Строки и текст, дата и время, файлы, JSON и XML, HTTP-запросы.
Лекции письменные, видео нет. Я умею понятно объяснять сложные вещи, так что читать их приятно. Много примеров, нет сухой теории. В конце каждого модуля идет краткое резюме.
Курс интерактивный. Большинство упражнений можно выполнять прямо в браузере. По каждой задачке есть эталонное решение с разбором.
Программа курса
Основы
- О курсе
- Базовые конструкции
- Массивы и карты
- Функции и указатели
- Структуры и методы
- Интерфейсы
- Ошибки
- Резюме
Чистый код
- Пакеты и модули
- Тесты
- Бенчмарки
- Профайлер
- Резюме
Многозадачность
- Горутины
- Каналы 1
- Каналы 2
- Композиция
- Время
- Контекст
- Синхронизация
- Резюме
Стандартная библиотека
- О модуле
- Текст
- Дата и время
- Чтение и запись
- JSON, XML, CSV
Финал
- Итоги







