Go Полный курс по Go GoLang

5 участников

О чём курс

Курс по языку программирования Go (Golang) представляет собой комплексную программу обучения, разработанную для тех, кто хочет освоить один из самых востребованных и современных языков в IT-индустрии. Go, созданный инженерами Google, завоевал популярность благодаря своей лаконичности, высокой производительности и встроенным механизмам для эффективной работы с многопоточностью. Данный курс построен по принципу «от простого к сложному», что делает его идеальным выбором как для новичков, не имеющих опыта программирования, так и для тех, кто хочет систематизировать свои знания и перейти к профессиональной разработке на Go.

Обучение начинается с фундаментальных основ: установки языка, настройки среды разработки в Visual Studio Code и написания первых программ. Вы научитесь правильно компилировать код, использовать пакеты и следовать лучшим практикам форматирования, принятым в сообществе Go. Постепенно программа углубляется в синтаксис языка, охватывая переменные, константы, базовые типы данных и функции. Особое внимание уделяется таким важным концепциям, как замыкания, именованные возвращаемые значения и работа с указателями, что критически важно для понимания управления памятью в Go.

В процессе обучения вы освоите работу со сложными структурами данных: массивами, срезами (slices), картами (maps) и структурами (structs). Вы научитесь различать значимые типы, использовать методы для структур и эффективно применять условные операторы и циклы для управления логикой приложений. Важной частью курса является изучение интерфейсов — ключевого инструмента Go, который обеспечивает гибкость и модульность кода. Вы узнаете, как реализовывать интерфейсы, работать с универсальными типами и создавать масштабируемые архитектуры.

Значительный блок программы посвящен обработке ошибок, что является «визитной карточкой» Go. Вы научитесь не просто реагировать на сбои, но и грамотно использовать механизмы panic и recover, а также создавать собственные типы ошибок для обеспечения надежности программ. Завершающий этап курса посвящен многопоточности — одной из самых сильных сторон Go. Вы изучите goroutines, каналы и группы ожидания, что позволит вам писать высокопроизводительные конкурентные приложения, способные эффективно использовать ресурсы современных процессоров.

Формат обучения включает в себя видеоуроки, сопровождаемые подробными пояснениями, практическими примерами и упражнениями. Такой подход позволяет не только усвоить теоретическую базу, но и сразу закрепить её на практике. По окончании курса вы получите не только глубокое понимание того, как работает язык «под капотом», но и набор готовых шаблонов и навыков, которые можно сразу применять в реальных проектах. Курс дает все необходимое для того, чтобы уверенно начать путь в разработке на Go, создавая надежные, масштабируемые и эффективные программные решения.

Программа обучения

Модуль 1. Введение в курс по Go (4 лекции, 4 минуты)

  • Добро пожаловать на курс по Go (2:30)
  • Присоединяйтесь к сообществу единомышленников (0:29)
  • Как использовать файлы проектов (1:06)
  • Важно — скачайте файлы проектов для курса (0:07) Модуль 2. Инсталляция Go и команды Go (5 лекций, 13 минут)
  • Введение (0:26)
  • Инсталляция Go (3:17)
  • Команды Go (3:07)
  • Установка редактора кода Visual Studio Code (1:30)
  • Настройка редактора кода для Go (4:21) Модуль 3. Основы Go (8 лекций, 1 час 2 минуты)
  • Введение (0:50)
  • Функция main и пакет main (10:37)
  • Пакет fmt и функция Println (10:57)
  • Компиляция программ Go (5:35)
  • Форматирование кода Go (6:49)
  • Внешние пакеты для приложений Go (5:10)
  • Создание модуля и использование внешних пакетов (16:19)
  • Подведение итогов по первой программе на Go (5:36) Модуль 4. Переменные и базовые типы (14 лекций, 1 час 43 минуты)
  • Введение (0:39)
  • Подготовка к обсуждению переменных в Go (1:45)
  • Объявление и присвоение значений переменным (12:11)
  • Добавление другого файла с функцией main (2:07)
  • Устранение ошибки, связанной с несколькими функциями main (3:44)
  • Разные варианты объявления переменных (16:35)
  • Использование Printf для форматирования строк (20:19)
  • Определение типа переменных (12:28)
  • Присвоение новых значений переменным (3:38)
  • Статическая типизация в Go (4:36)
  • Отдельное объявление переменных (4:08)
  • Значения по умолчанию для переменных (4:41)
  • Строгая типизация в Go (10:33)
  • Объявление нескольких переменных на одной строке (5:27) Модуль 5. Константы (5 лекций, 49 минут)
  • Введение (0:36)
  • Константы в Go (7:17)
  • Константы и адаптация типа (12:57)
  • Группирование переменных и констант (17:14)
  • Подведение итогов по переменным в Go (11:23) Модуль 6. Функции (12 лекций, 2 часа 36 минут)
  • Введение (1:35)
  • Подготовка к обсуждению функций в Go (1:27)
  • Создание и вызов функций (9:41)
  • Параметры и аргументы функций (13:17)
  • Несколько параметров в функциях (9:44)
  • Возврат значения из функции (16:39)
  • Использование результата одной функции в вызове другой функции (8:42)
  • Возврат нескольких значений из функции (20:30)
  • Имена для возвращаемых значений (13:44)
  • Именованные функциональные литералы (13:27)
  • Замыкания в функциях (33:20)
  • Подведение итогов по функциям в Go (13:42) Модуль 7. Указатели (6 лекций, 1 час 34 минуты)
  • Введение (0:51)
  • Использование указателей для получения адресов в памяти (22:10)
  • Изменение значений в памяти с помощью указателей (28:24)
  • Функции без использования указателей (11:45)
  • Функции с использованием указателей (21:14)
  • Подведение итогов по указателям в Go (9:20) Модуль 8. Массивы и slices (11 лекций, 2 часа 41 минута)
  • Введение (1:26)
  • Создание массивов (14:40)
  • Присвоение массива и функция len (12:41)
  • Создание slice из массива (12:54)
  • Связь между массивом и slice (8:43)
  • Варианты создания slice (9:56)
  • Добавление элементов в slice и функция cap (40:03)
  • Превышение максимально допустимого размера в slice (14:48)
  • Удаление элементов из slice (22:03)
  • Перебор элементов с помощью цикла for (9:22)
  • Подведение итогов по массивам и slice (13:55) Модуль 9. Условные инструкции if и switch (7 лекций, 1 час 7 минут)
  • Введение (0:50)
  • Условная инструкция if (6:34)
  • Условная инструкция if else (4:45)
  • Условная инструкция if else if (17:32)
  • Вложенные if и объединение условий (11:43)
  • Использование инициализаторов в if (13:23)
  • Инструкция switch (11:46) Модуль 10. Циклы for и for range (7 лекций, 1 час 17 минут)
  • Введение (0:37)
  • Цикл for со счетчиком (12:32)
  • Цикл for с условием (5:45)
  • Бесконечный цикл с break и continue (22:06)
  • Цикл for range (18:51)
  • Использование break и continue в цикле for range (9:06)
  • Подведение итогов по использованию if, switch и for (8:27) Модуль 11. Тип map (9 лекций, 1 час 46 минут)
  • Введение (1:29)
  • Создание и базовые действия с map (18:03)
  • Проверка наличия ключа в map (9:42)
  • Удаление ключей с значениями из map (8:04)
  • Итерация по map (5:10)
  • Что такое nil (10:49)
  • Использование функции make для создания map (8:58)
  • Передача map в функцию (34:26)
  • Подведение итогов по использованию map (9:08) Модуль 12. Тип struct (10 лекций, 2 часа 11 минут)
  • Введение (1:26)
  • Введение в тип struct (19:16)
  • Использование struct literal (8:48)
  • Передача struct в функцию в виде копии значения (14:32)
  • Передача struct в функцию в виде указателя (17:45)
  • Поля в struct типа func (16:07)
  • Методы для struct (16:28)
  • Методы для других типов (7:54)
  • Отличия struct и map (18:28)
  • Подведение итогов по struct (9:54) Модуль 13. Интерфейсы (12 лекций, 3 часа 45 минут)
  • Введение (0:51)
  • Что такое интерфейс на примере кофейни (9:24)
  • Базовая реализация интерфейса (29:47)
  • Несколько реализаций интерфейса (32:06)
  • Тип интерфейс как тип параметра функции (29:21)
  • Реализация встроенного интерфейса Stringer (16:35)
  • Задача для представления типа slice в виде строки (21:12)
  • Задача для реализации интерфейса в типе struct (10:06)
  • Реализация нескольких интерфейсов (18:55)
  • Создание slice типа интерфейс (15:43)
  • Использование пустого универсального интерфейса (17:26)
  • Подведение итогов по интерфейсам (23:49) Модуль 14. Ошибки (12 лекций, 2 часа 30 минут)
  • Введение (0:56)
  • Ошибки на этапе выполнения программы (12:34)
  • Предотвращение ошибки деления на ноль (5:45)
  • Отложенный вызов именованных функций (5:40)
  • Отложенный вызов анонимных функций (10:23)
  • Восстановление после ошибок в отложенной функции (20:55)
  • Получение ошибки из функции (13:54)
  • Создание ошибки типа error (10:42)
  • Реализация интерфейса error и вызов panic (16:35)
  • Формирование и возврат ошибки из функции (25:35)
  • Создание ошибки используя функцию New из пакета errors (12:38)
  • Подведение итогов по работе с ошибками (14:05) Модуль 15. Goroutines и параллельное выполнение (9 лекций, 2 часа 3 минуты)
  • Введение (0:40)
  • Введение в одновременное выполнение частей программы (9:06)
  • Что такое main goroutine (9:41)
  • Создание goroutine (13:34)
  • Несколько goroutines (12:15)
  • Использование групп ожидания (25:15)
  • Использование каналов между goroutines (22:40)
  • Один канал для нескольких goroutines (19:03)
  • Подведение итогов по goroutines (11:03) Модуль 16. Завершение (1 лекция, 1 минута)
  • Завершение (0:55)
Складчина создана 8 июля 2026 г. · описание обновлено 9 июля 2026 г.

Теги курса

Инструменты

Другие материалы автора 12

BS Bogdan Stashchuk Все материалы
1 130 ₽