Джокер
Администратор
- Регистрация
- 1 Янв 2015
- Сообщения
- 145.754
- Реакции
- 78.164
Складчина: Go - Полный курс по Go (GoLang) [Bogdan Stashchuk]
Освойте язык Go с нуля: переменные, функции, структуры, maps, интерфейсы, goroutines и работа с ошибками.
Что вы узнаете:
Научитесь устанавливать Go, настраивать VS Code и писать первые программы, компилируя и форматируя код по лучшим практикам Go
Разберётесь в переменных, константах и типах, научитесь использовать Printf, понимать статическую типизацию и значения по умолчанию
Освоите функции, массивы, срезы, карты, структуры, интерфейсы и указатели, включая замыкания, методы и передачу по ссылке
Научитесь обрабатывать ошибки, использовать panic и recover, писать конкурентный код с goroutines, каналами и группами ожидания
Требования:
Базовые знания работы с компьютером, установки программ и навигации по файловой системе
Желание изучать современный язык программирования и применять его на практике с примерами
Отсутствие необходимости в предыдущем опыте программирования - всё объясняется с нуля
Язык программирования Go (или Golang), разработанный Google, становится всё популярнее благодаря своей простоте, высокой производительности и встроенной поддержке параллельного выполнения. Этот курс предназначен для тех, кто хочет с нуля освоить Go и научиться создавать надёжные, масштабируемые и эффективные программы.
Курс начинается с установки Go и настройки среды разработки в Visual Studio Code. Вы научитесь работать с пакетами, писать простые программы, компилировать и форматировать код. Мы подробно изучим переменные, базовые типы, константы и функции, включая такие темы, как замыкания и именованные возвращаемые значения.
Затем вы познакомитесь с указателями, массивами, срезами, условными операторами и циклами. Переходя к более сложным темам, мы рассмотрим работу с map и struct, их особенности и отличия. Особое внимание уделяется интерфейсам и их реализации — важному аспекту, который делает Go мощным языком для разработки.
Большой раздел посвящён ошибкам: от простого получения ошибок до продвинутого использования panic, recover и реализации собственного типа ошибок. Завершается курс глубоким погружением в goroutines, каналы и синхронизацию, что позволяет писать конкурентные приложения.
В курсе используется подход “от простого к сложному” с большим количеством реальных примеров, задач и практики. Вы не только узнаете, как работает язык, но и научитесь применять полученные знания на практике.
Ключевые темы, которые вы изучите:
Настройка среды разработки и первая программа на Go
Работа с переменными, типами, константами и функциями
Указатели, массивы, срезы, условные конструкции и циклы
Использование map и struct, отличие значимых типов
Интерфейсы: реализация, множественная реализация, универсальные типы
Обработка ошибок: panic, recover, custom error
Многопоточность: goroutines, каналы, группы ожидания
Все видеоуроки сопровождаются пояснениями, примерами и упражнениями. В конце курса вы получите не только знания, но и готовые шаблоны, которые сможете использовать в своих проектах.
Программа:
Модуль 1. Введение в курс по Go (4 лекции, 4 минуты)
Модуль 2. Инсталляция Go и команды Go (5 лекций, 13 минут)
Модуль 3. Основы Go (8 лекций, 1 час 2 минуты)
Модуль 4. Переменные и базовые типы (14 лекций, 1 час 43 минуты)
Модуль 5. Константы (5 лекций, 49 минут)
Модуль 6. Функции (12 лекций, 2 часа 36 минут)
Модуль 7. Указатели (6 лекций, 1 час 34 минуты)
Модуль 8. Массивы и slices (11 лекций, 2 часа 41 минута)
Модуль 9. Условные инструкции if и switch (7 лекций, 1 час 7 минут)
Модуль 10. Циклы for и for range (7 лекций, 1 час 17 минут)
Модуль 11. Тип map (9 лекций, 1 час 46 минут)
Модуль 12. Тип struct (10 лекций, 2 часа 11 минут)
Модуль 13. Интерфейсы (12 лекций, 3 часа 45 минут)
Модуль 14. Ошибки (12 лекций, 2 часа 30 минут)
Модуль 15. Goroutines и параллельное выполнение (9 лекций, 2 часа 3 минуты)
Модуль 16. Завершение (1 лекция, 1 минута)
Спойлер: Подробная программа
Модуль 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)
Цена 1130 руб. (12,99 евро)
СКАЧАТЬ СЛИВЫ КУРСОВ
Освойте язык Go с нуля: переменные, функции, структуры, maps, интерфейсы, goroutines и работа с ошибками.
Что вы узнаете:
Научитесь устанавливать Go, настраивать VS Code и писать первые программы, компилируя и форматируя код по лучшим практикам Go
Разберётесь в переменных, константах и типах, научитесь использовать Printf, понимать статическую типизацию и значения по умолчанию
Освоите функции, массивы, срезы, карты, структуры, интерфейсы и указатели, включая замыкания, методы и передачу по ссылке
Научитесь обрабатывать ошибки, использовать panic и recover, писать конкурентный код с goroutines, каналами и группами ожидания
Требования:
Базовые знания работы с компьютером, установки программ и навигации по файловой системе
Желание изучать современный язык программирования и применять его на практике с примерами
Отсутствие необходимости в предыдущем опыте программирования - всё объясняется с нуля
Язык программирования Go (или Golang), разработанный Google, становится всё популярнее благодаря своей простоте, высокой производительности и встроенной поддержке параллельного выполнения. Этот курс предназначен для тех, кто хочет с нуля освоить Go и научиться создавать надёжные, масштабируемые и эффективные программы.
Курс начинается с установки Go и настройки среды разработки в Visual Studio Code. Вы научитесь работать с пакетами, писать простые программы, компилировать и форматировать код. Мы подробно изучим переменные, базовые типы, константы и функции, включая такие темы, как замыкания и именованные возвращаемые значения.
Затем вы познакомитесь с указателями, массивами, срезами, условными операторами и циклами. Переходя к более сложным темам, мы рассмотрим работу с map и struct, их особенности и отличия. Особое внимание уделяется интерфейсам и их реализации — важному аспекту, который делает Go мощным языком для разработки.
Большой раздел посвящён ошибкам: от простого получения ошибок до продвинутого использования panic, recover и реализации собственного типа ошибок. Завершается курс глубоким погружением в goroutines, каналы и синхронизацию, что позволяет писать конкурентные приложения.
В курсе используется подход “от простого к сложному” с большим количеством реальных примеров, задач и практики. Вы не только узнаете, как работает язык, но и научитесь применять полученные знания на практике.
Ключевые темы, которые вы изучите:
Настройка среды разработки и первая программа на Go
Работа с переменными, типами, константами и функциями
Указатели, массивы, срезы, условные конструкции и циклы
Использование map и struct, отличие значимых типов
Интерфейсы: реализация, множественная реализация, универсальные типы
Обработка ошибок: panic, recover, custom error
Многопоточность: goroutines, каналы, группы ожидания
Все видеоуроки сопровождаются пояснениями, примерами и упражнениями. В конце курса вы получите не только знания, но и готовые шаблоны, которые сможете использовать в своих проектах.
Программа:
Модуль 1. Введение в курс по Go (4 лекции, 4 минуты)
Модуль 2. Инсталляция Go и команды Go (5 лекций, 13 минут)
Модуль 3. Основы Go (8 лекций, 1 час 2 минуты)
Модуль 4. Переменные и базовые типы (14 лекций, 1 час 43 минуты)
Модуль 5. Константы (5 лекций, 49 минут)
Модуль 6. Функции (12 лекций, 2 часа 36 минут)
Модуль 7. Указатели (6 лекций, 1 час 34 минуты)
Модуль 8. Массивы и slices (11 лекций, 2 часа 41 минута)
Модуль 9. Условные инструкции if и switch (7 лекций, 1 час 7 минут)
Модуль 10. Циклы for и for range (7 лекций, 1 час 17 минут)
Модуль 11. Тип map (9 лекций, 1 час 46 минут)
Модуль 12. Тип struct (10 лекций, 2 часа 11 минут)
Модуль 13. Интерфейсы (12 лекций, 3 часа 45 минут)
Модуль 14. Ошибки (12 лекций, 2 часа 30 минут)
Модуль 15. Goroutines и параллельное выполнение (9 лекций, 2 часа 3 минуты)
Модуль 16. Завершение (1 лекция, 1 минута)
Спойлер: Подробная программа
Модуль 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)
Цена 1130 руб. (12,99 евро)
СКАЧАТЬ СЛИВЫ КУРСОВ
Для возможности скачивать складчины и сливы курсов нужно зарегистрироваться
Возможно, Вас ещё заинтересует:
- Руны: код Творца. Сотвори свой мир с помощью древних знаний [Ева Беркана]
- Ремонт холодильников. Просто о сложном [Дмитрий Алексеев]
- Делаем кроссплатформенные игры на Godot: от аркады до песочницы [Алексей Адонин]
- Йога-нидра. Сон, который лечит душу [Ведана Солярис]
- PhotoLive - оживи старые фото и заработай на контент-заводе исторических роликов прямо на своём ПК. [AI Мастерская]
- Романтическая лексика (2021) [Веня Пак, Тикея Дей]
- Разговорный английский: то, чему не научат в школе! (2018) [Веня Пак]
- A1 Grammar refresher [DaSchool] [Екатерина Нелипа]
- Skills for Life [DaSchool] [Юлия Данюшевская]
- Массовый сбор ключей, составление семантического ядра [Тариф Профессиональный] [Keys.so]