ТОП 20 лучших онлайн-курсов обучения Golang (Go)

268
0
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Время на прочтение: : 27 мин

Язык программирования Go от Google — прост, универсален и эффективен. Вы с нуля научитесь создавать на нём приложения с микросервисной архитектурой. За Go-разработчиков конкурируют такие компании, как Google, Dropbox, SoundCloud, Ozon, Yandex, Mail.ru и Twilio.

Профессия Go-разработчик от Skillbox

ТОП 20 лучших онлайн-курсов обучения Golang (Go)

Ссылка на официальный сайт: https://skillbox.ru/course/profession-godev/

Язык программирования Go от Google — прост, универсален и эффективен. Вы с нуля научитесь создавать на нём приложения с микросервисной архитектурой. За Go-разработчиков конкурируют такие компании, как Google, Dropbox, SoundCloud, Ozon, Yandex, Mail.ru и Twilio.

Подробнее о курсе →

Чему научитесь:

  • Разрабатывать приложения на Go
  • Работать с файловой системой
  • Работать с алгоритмами поиска и сортировки
  • Понимать принципы работы операционных систем и обмена данными по сети
  • Программировать многопоточные распределённые системы для высоконагруженных проектов
  • Собирать, тестировать и развёртывать готовые приложения
  • Работать с системой контроля версий Git
  • Делать код-ревью
  • Прокачаете soft skills программиста.

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

  1. Разработчик на Go
  • Вводный модуль. Первая программа
  • Базовые типы. Целочисленные типы. Данные и вычисления
  • Строки
  • Условный оператор if
  • Логические операторы и составные условия
  • Введение в циклы: for как единая точка входа
  • Вложенные циклы
  • Оператор switch
  • Диапазоны значений
  • Числа с плавающей запятой. Математические вычисления
  • Комплексные типы данных. Строки.
  • Работа с файлами
  • Функции в программировании
  • Функции, возвращающие результат
  • Композитные типы данных. Одномерные массивы. Базовые алгоритмы на массивах
  • Настройка JetBrains GoLand, создание проекта на JetBrains GoLand
  • Отладка и логирование
  • Breakpoints
  • Простые алгоритмы на массивах
  • Двумерные массивы
  • Анонимные функции
  • Продвинутые алгоритмы на массивах. Поиск.
  • Сортировка с пониженной алгоритмической сложностью
  • Композитные типы данных. Срезы. Динамическое выделение памяти
  • Подмножества и работа со срезами
  • Строки и текстовые данные. Базовые алгоритмы со строками
  • Композитные типы данных. Карты и структуры
  • Переиспользование кода, модульность
  • Многопоточность, работа с каналами
  • Обмен данными по сети
  • Микросервисная архитектура.
  1. Бонусные курсы
  • Язык запросов SQL
  • Универсальные знания программиста
  • Система контроля версий Git
  • Английский для IT-специалистов
  • Карьера и развитие программиста.
  1. Дипломный проект
  • Сетевой многопоточный демон.

Цена: Рассрочка — 4 936 ₽ / мес

Backend-разработчик на Go от SkillFactory

Backend-разработчик на Go от SkillFactory

Ссылка на официальный сайт: https://skillfactory.ru/backend-razrabotchik-na-golang

Освойте программирование на Go и бэкенд-разработку высоконагруженных приложений.

Чему научитесь:

  • Решать задачи любой сложности с помощью алгоритмов
  • Программировать на Golang, ревьюить код
  • Искать и исправлять ошибки в своем коде (debugging)
  • Разработать приложение с микросервисной архитектурой
  • Внедрять devops-практики в процесс разработки
  • Проектировать архитектуру приложения
  • Писать API
  • Писать серверную логику и настраивать взаимодействие с базами данных.

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

  1. Основы Go и Computer Science
  • Вводный блок
  • Основы языка Go
  • Алгоритмы и структуры данных на Go
  • Основы Многопоточности
  • Выполнение проекта: собрать пайплайн обработки данных.
  1. Инструменты разработчика
  • Основы Linux
  • Знакомство с Git
  • Docker
  • Базы данных и SQL
  • Базы данных NoSql
  • Углубленное изучение GO
  • Выполнение проекта: разработка новостного агрегатора.
  1. Архитектура, DevOps, очереди
  • Основы архитектуры.
  1. Итоговый проект
  • Разделение монолита на микросервисы.

Цена: Рассрочка на 24 месяца — 4 000 ₽ / мес

Профессия Разработка на Go от GeekBrains

Профессия Разработка на Go от GeekBrains

Ссылка на официальный сайт: https://gb.ru/professions/go-developer

Научитесь создавать приложения, безопасные и масштабируемые сервисы на современном языке от Google. Его используют IT-гиганты IBM, Intel и Adobe, а в России — ВКонтакте, Avito и Ozon.

Чему научитесь:

  • Разрабатывать на языке Go;
  • Проектировать микросервисную архитектуру веб-приложений;
  • Использовать реляционные и нереляционные базы данных;
  • Понимать принципы CI/CD.

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

  1. Основы программирования
  • Программа, переменные и типы данных
  • Блок-схемы и ветвления
  • Циклы
  • Функции
  • Массивы.
  1. HTML/CSS. Интерактивный курс
  • Основные понятия в веб-разработке
  • Основы языка разметки документов HTML
  • Основы языка оформления стилей документа CSS
  • Псевдоклассы и псевдоэлементы, табличная верстка
  • Формирование блочной модели, блочная верстка
  • Работа с макетом дизайна в формате PSD
  • Разметка сайта и знакомство с Bootstrap
  • Стандарты web и вспомогательные инструменты.
  1. Базовый видеокурс по Git
  • Введение в Git
  • Установка и настройка Git
  • Основные команды терминала
  • Работа с репозиториями
  • Управление файлами репозитория
  • История изменений
  • Работа с ветками репозитория
  • Публикация репозитория
  • Слияния веток
  • Управление версиями
  • Создание pull-request
  • Сложные операции
  • Работа с Fork-репозиториями.
  1. Базовый курс Javascript
  • Основы языка JavaScript
  • Основные операторы
  • Циклы, массивы, структуры данных
  • Объекты
  • Введение в DOM
  • Обработка событий
  • Урок-практикум
  • Анонимные функции, замыкания.
  1. Рабочая станция
  • Установка операционной системы Linux
  • Настройка интерфейса командной строки
  • Управление пользователями и группами
  • Процессы, загрузка операционной системы
  • Устройство файловой системы. Файл и каталог
  • Введение в скрипты bash. Планировщики задач crontab и at
  • Управление пакетами и репозиториями. Основы сетевой безопасности
  • Введение в docker.
  1. Go. Уровень 1
  • Особенности и история появления языка Go. Работа с плейграундом и основы тулчейна.
  • Базовые типы данных. Основы работы с подсистемой ввода-вывода операционной системы. Основы структурирования Go-приложений
  • Операторы и управляющие конструкции, базовые функции
  • Сложные типы данных: массивы, слайсы и мапы
  • Сложные типы данных: структуры, функции и методы
  • Сложные типы данных: указатели
  • Интерфейсы. Ошибки. Основы обработки ошибок
  • Основы конфигурирования приложений
  • Работа с файловой системой
  • Основы тестирования Go-приложений
  • Финальная консультация по курсу. Ответы на вопросы.
  1. Go. Уровень 2
  • Продвинутая генерация и обработка ошибок, и работа с panic. Отложенный вызов функций
  • Кросс-компиляция в Go и более глубокое погружение в тулчейн
  • Работа с внешними зависимостями
  • Concurrency, часть 1. Горутины и каналы
  • Concurrency, часть 2. Основы типов данных из пакета sync
  • Concurrency, часть 3. Планировщик горутин, race condition и проверка на его наличие
  • Рефлексия и кодогенерация в языке Go.
  • Основы работы со стандартной библиотекой Go. Подготовка к курсовому проекту.
  1. Лучшие практики разработки Go-приложений
  • Обработка ошибок сторонних сервисов и сигналов операционной системы
  • Логирование
  • Продвинутые практики тестирования
  • Консультация
  • Принципы структурирования Go-приложений
  • Линтеры: продвинутый уровень
  • Сборка приложений и автоматизация повторяющихся действий.
  1. Backend-разработка. Уровень 1
  • Основы сетевого взаимодействия
  • HTTP и проектирование RESTful API
  • Реализация и тестирование HTTP-хендлеров
  • Выбор роутера и библиотек. Middleware. Контекст запроса.
  • Практика, часть 1. Реализация сервера
  • Практика, часть 2. Реализация веб-приложения
  • Особенности докеризации Go-приложений.
  • Сборка и развёртывание приложения. CI/CD.
  1. Базы данных
  • Введение в теорию реляционных баз данных
  • Базовые понятия структуры базы данных
  • Определение данных, базовые операции с данными
  • Выборка данных, агрегация данных
  • Вложенные запросы и объединение UNION
  • Объединение JOIN
  • Расширенные возможности SQL
  • Оконные функции, индексы, работа в графическом клиенте.
  1. Postgres для Go-разработчиков
  • Начало работы с PostgreSQL: базовые инструменты, сравнение с другими СУБД
  • Работа со структурой базы, CTE, анализ требований при поиске данных
  • Анализ выполнения запросов и индексация данных
  • Использование PostgreSQL из Go-приложения
  • Структура приложения, тестирование, миграции, ORM
  • Уровни изоляции, конкурентный доступ, очистка, репликация.
  1. Наблюдаемость (observability) и оптимизация
  • Monitoring + alerting
  • Logging + Error handling
  • Профилированиеитрейсинг
  • Оптимизация и кэширование.
  1. Backend-разработка. Уровень 2
  • Принципы взаимодействия микросервисов
  • JSON-RPC и gRPC
  • GraphQL
  • Запуск Go-приложений в Kubernetes. Конфигурирование. Мониторинг. Отладка.
  • Kubernetes-кластер
  • Очереди
  • Функциональное тестирование/BDD
  • Основы безопасности Go-приложений.
  1. Подготовка к собеседованию Go-разработчика
  • Создание GitHub-портфолио
  • Гибкие навыки Go-разработчика
  • Прохождение технического собеседования
  • Консультация по портфолио.
  1. Командная разработка микросервисного проекта
  • Совместная работа по проектированию сервисов. RFC и дизайн-документы
  • Практики совместной работы с Git. Код-ревью
  • Совместное тестирование и развёртывание сервисов
  • Ответственность разработчика. Чек-листы готовности к продакшену
  • Практика oncall-дежурств. Инциденты и постмортемы
  • Три консультации по вашему проекту.

Перейти на сайт курса

Цена: Рассрочка до 36 месяцев — от 2 285 ₽ / мес

Golang для начинающих от Udemy

ТОП 20 лучших онлайн-курсов обучения Golang (Go)

Ссылка на официальный сайт: https://www.udemy.com/course/golang-o/

Простыми словами, разберем как работать на языке программирования Go. Его особенности и тонкости.

Чему научитесь:

  • изучите язык программирования Go.

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

  1. Введение
  • Введение
  • Основы языка
  • Переменные
  • Переменные среды. Редактор кода
  • Получение данных от пользователя
  • Условные операторы
  • Преобразование строки в число
  • Область видимости
  • Генерация случайного числа
  • Преобразование строки в int
  • Циклы
  • массивы
  • Чтение данных из файла
  • Высчитываем среднее значение
  • Сегменты
  • Карты / map
  • Структуры.
  1. Продвинутая часть
  • Определяемые типы
  • Инкапсуляция
  • Интерфейсы
  • Рекурсия
  • Exception в Go
  • Многопоточность. горутины
  • Создание Веб-сервиса.

Перейти на сайт курса

Цена: 1 790 рублей

Golang Developer. Professional от OTUS

ТОП 20 лучших онлайн-курсов обучения Golang (Go)

Ссылка на официальный сайт: https://otus.ru/lessons/golang-professional/

От основ языка до создания собственного микросервиса на Go.
Для тех, кто хочет углубиться во внутреннее устройство Golang и его взаимодействие с другими системами.

Подробнее о курсе →

Чему научитесь:

  • писать production-ready код, многопоточные и конкурентные программы;
  • понимать синтаксис и внутреннее устройство языка Go;
  • понимать особенности сетевого программирования;
  • уметь создавать микросервисы с помощью Go;
  • разворачивать микросервисы с помощью docker.

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

  1. Начало работы с Go
  • Инструментарий и начало работы с Go
  • Тестирование в Go. Часть 1
  • Элементарные типы данных в Go
  • Массивы, слайсы и словари
  • Структуры
  • Функции и методы
  • Интерфейсы. Часть 1
  • Интерфейсы. Часть 2
  • Обработка ошибок. Понятие паники
  • Тестирование в Go. Часть 2
  1. Concurrency в Go
  • Горутины и каналы
  • Примитивы синхронизации. Часть 1
  • Примитивы синхронизации. Часть 2
  • Concurrency patterns
  • Go внутри. Планировщик
  • Go внутри. Память и сборка мусора
  • Разбор домашних заданий и ответы на вопросы. Ч.1
  1. Стандартные библиотеки и практики
  • Работа с вводом/выводом в Go
  • Форматирование данных
  • Взаимодействие с OS
  • Рефлексия
  • Кодогенерация в Go
  • Файлы конфигурации и логирование
  • Профилирование и оптимизация Go программ
  1. Работа с сетью и БД
  • Контекст и низкоуровневые сетевые протоколы
  • Работа с SQL
  • Работа с HTTP
  • Работа с gRPC
  • Разбор домашних заданий и ответы на вопросы. Ч.2
  1. Микросервисы
  • Монолит и микросервисы
  • Очереди сообщений
  • Docker
  • Тестирование микросервисов
  • Мониторинг
  1. Проект
  • Проектная работа. Вводное
  • Консультация по проектам
  • Итоговое занятие.

Перейти на сайт курса

Цена: 48 000 рублей

Программирование на golang learn go от Be Geek

Программирование на golang learn go от Be Geek

Ссылка на официальный сайт: https://www.youtube.com/playlist?list=PLQuaNOtBP3TpjiROGjy3-hEr5xL0fN9bX

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

  • Типы и переменные в Golang. Программирование на Go #1
  • Переменные и ошибки с ними. Программирование на Go #2
  • Циклы в Go. Программирование на Go #3
  • Массивы и срезы в Go. Программирование на Go #4
  • Карты в Go. Maps in Go. Программирование на Go #5
  • Функции в Go. Программирование на Go #6
  • Структуры в Go. Программирование на Go #7
  • Организация кода в Go. Программирование на Go #8
  • Какие книги читать по Golang???
  • Библиотека Sort. Программирование на Go #9
  • Парсер на Golang. Telegram и Go. Программирование на Go #10
  • Telegram bot на Используем webhook. Программирование на Go #11
  • Telegram bot на Собираем данные пользователей. Программирование на Go #12
  • Фильтр сообщений для Telegram на Go. Программирование на Go #13
  • Telegram bot на Go. Отправляем фото из облачного хранилища. Программирование на Go #14
  • Go with Docker. Упаковываем приложение Go в Docker. Изучаем Golang #15
  • Переменные окружения в Golang. Программирование на Go #16
  • Golang ищем заказы на фриланс #4. Go http, telegram, api
  • Пишем Mysql Exporter для Prometheus на Golang
  • ошибки новичков #2 (язык программирования Go)
  • простая веб форма авторизации (golang, templates, шаблоны, web)
  • Интерактивный CLI на Go [язык программирования Go]
  • Модуль md5. Сравниваем файлы на Go с помощью md5sum [язык программирования Go]
  • Query vs Exec vs Prepare в Функции для работы с базой данных в Go.

Перейти на сайт курса

Стоимость: Бесплатно

Профессия Go-разработчик от АНО ДПО «ШАД»

рофессия Go-разработчик от АНО ДПО «ШАД»

Ссылка на официальный сайт: https://practicum.yandex.ru/promo/go-profession

Научитесь программировать на Golang при поддержке опытного ментора. Курсы для разработчиков с опытом.

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

  1. Основы языка Go
  • Введение в систему типов
  • Композитные типы
  • Управление потоком выполнения
  • Функции
  • Пакеты, модули
  1. Особенности программирования на Go
  • Обработка ошибок
  • ООП
  • Интерфейсы
  • Тестирование.
  1. Пакеты стандартной библиотеки
  • сontext и time
  • net/http
  • encoding
  • os
  • flag
  • compress
  • hash и crypto
  • database/sql
  • errors
  1. Конкурентность
  • Многопоточность в Go
  1. Пакеты стандартной библиотеки
  • сontext и time
  • net/http
  • encoding
  • os
  • flag
  • compress
  • hash и crypto
  • database/sql
  • errors
  1. Конкурентность
  • основы многопоточности
  • горутины
  • каналы
  • получение данных из каналов
  • cинхронизация состояния
  • паттерны многопоточности
  1. Туллинг
  • Профилирование
  • Стилизация кода
  • Статический анализ кода
  • Документация
  • Кодогенерация
  • Go comment flags
  1. Расширенная стандартная библиотека
  • Net
  • sync и x/sync
  • bytes
  • bufio
  • math/rand и crypto/rand
  • os
  • Обзор остальной стандартной библиотеки.

Перейти на сайт курса

Цена: 66 000 — 132 000 рублей

Golang для инженеров от ООО «Слёрм»

Golang для инженеров от ООО «Слёрм»
Golang для инженеров от ООО «Слёрм»

Ссылка на официальный сайт: https://slurm.io/go-for-ops

На курсе мы научим вас создавать свой API сервер с помощью Golang, запускать контейнеры, взаимодействовать с Docker из Go, работать с кастомными операторами и многим другим приятным и полезным штукам.

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

  1. Введение
  • Знакомство с курсом
  • Знакомство со спикером
  • Цели курса
  • Как учиться онлайн
  • Что из себя представляет GO?
  1. Основы Golang
  • Переменные и типы
  • Функции
  • Циклы, switch-case, if
  1. Установочная онлайн-встреча
  2. Погружаемся глубже в основы
  • Структуры
  • Интерфейсы
  • Обобщенное программирование и ООП в Go
  • Garbage collector
  1. Concurrency
  • Параллелизм и конгруэнтность. Что это такое и чем отличаются
  • Треды vs горутины
  • Обработка ошибок
  • Базовый принципы синхронизации
  • WaitGroup
  • Каналы
  • Select
  • Разбор пакета context
  1. GO на практике 1
  • Go modules и структура проекта
  • Работа с операционной системой
  • Работа с файлами и файловой системой
  • Работа с сетью в Golang
  • Обзор протоколов и форматов
  1. GO на практике 2
  • Как работать с базой данных
  • Пакеты для http
  • Как писать тесты
  • Проверка качества кода
  • Кросскомпиляция и build теги
  • Чек-лист итоги основного блока
  1. АМА-сессия + неформальная встреча
  2. Работа с Docker из Go
  • Docker SDK для Go
  • Работаем с докером из Go
  • Практические советы для применения
  • Практика — пишем приложение деплоящее контейнер и тестирующее его
  1. Паттерны Kubernetes
  • Health probe/Liveness probe
  • Periodic job
  • Daemon service
  • Stateful service
  • Service discovery/Service mesh
  • Sidecar/Adapter
  • Controller/Operator (либо в след лекции)
  1. Операторы Kubernetes
  • Что такое оператор Куб
  • Как писать кастомные операторы
  • Пишем кастомный оператор на GO
  • Финальное задание
  1. АМА-сессия + выпускной.

Цена: 35 000 — 50 000 рублей

Golang для начинающих от golangify

Golang для начинающих от golangify

Ссылка на официальный сайт: https://golangify.com/go/kurs-izucheniya-golang-dlya-nachinayuschih

Полный курс изучения программирования на Golang для начинающих. Примеры кода на Go с полным описанием. Изучение основ языка программирования Golang.

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

  • Начало программирования в Go — что нужно знать?
  • Что такое Go? Go Playground, пакеты, функции и скобки в Golang
  • Основы: Работа с числами, форматирование строк, переменные и константы
  • Цикл for, if-else-switch, True-False и операторы сравнения в Golang
  • Оператор switch в Golang
  • Область видимости переменных в Golang
  • Создание программы для покупки билетов в Golang
  • Вещественные числа в Golang — float64 и float32
  • Целые числа integer в Golang — выбор верного типа
  • Пакет Big — Крупные числа в Golang и примеры их использования
  • Работа со строками в Golang
  • Конвертирование типов данных в Golang
  • Создаем Шифр Виженера на Golang
  • Функции в Golang на примерах
  • Методы в Go — Создание и использование методов в Golang
  • Функции первого класса, замыкания и анонимные функции в Golang
  • Программа для перевода температуры из Цельсия в Фаренгейты
  • Создание и итерация массива в Golang
  • Срез массива в Golang
  • Работа с массивами и срезами в Golang — append() и make()
  • Карта — ассоциативный массив в Golang
  • Создание игры «Жизнь» в Golang
  • Структуры в Golang — Экспорт структур в JSON
  • Структуры и методы — объектно-ориентированный подход в Golang
  • Композиция и встраивание методов в Golang
  • Интерфейсы в Golang
  • Создание игры-симулятора фермы в Golang
  • Указатели в Golang
  • Значение nil в Golang
  • Обработка ошибок в Golang
  • Создание игры Судоку в Golang
  • Горутины и конкурентность — Многопоточность в Go
  • Изучаем конкурентность и параллелизм в Golang
  • Конкурентность в Go на примере создания игры для изучения Марса
  • JSON в Golang — сериализация и десериализация.

Перейти на сайт курса

Стоимость: Бесплатно

Стань GO-разработчиком от ООО «ФРОО»

Стань GO-разработчиком от ООО «ФРОО»

Ссылка на официальный сайт: https://golangcourse.ru/

Пиши производительные веб-сервисы с простым кодом за пару дней. Освой профессию на уровне middle-специалиста.

Чему научитесь:

  • изучите основы языка и разработки веб-сервисов с помощью Go
  • запустите свое приложение
  • узнаете типичные проблемы, с которыми сталкиваются разработчики любых веб-сервисов и научитесь их устранять
  • прокачаетесь в веб-программировании и пополните свое резюме.

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

  1. Введение в Golang
  • Переменные, базовые типы данных
  • Переменные, составные типы данных
  • Управляющие конструкции
  • Основы функций
  • Функция как объект первого класса, анонимные функции
  • Отложенное выполнение и обработка паники
  • Основы работы со структурами
  • Методы структур
  • Пакеты и область видимости
  • Основы работы с интерфейсами
  • Пустой интерфейс
  • Композиция интерфейсов
  • Написание программы уникализации
  • Написание тестов для программы уникализации
  1. Асинхронная работа
  • Методы обработки запросов и плюсы неблокирующего подхода
  • Горутины — легковесные процессы
  • Каналы — передаём данные между горутинами
  • Мультиплексирование каналов через оператор select
  • Таймеры и таймауты
  • Пакет context и отмена выполнения
  • Асинхронное получение данных
  • Пул воркеров
  • Waitgroup — ожидание завершения работы
  • Ограничение по ресурсам
  • Ситуация гонки на примере конкурентной записи в map
  • Mutex для синхронизации данных
  • Atomic
  1. Работа с динамическими данными и производительность
  • Распаковываем JSON
  • Нюансы работы с JSON
  • Пакет reflect — работаем с динамикой в рантайме
  • Кодогенерация — программа пишет программу
  • Система бенчмарков Go
  • Профилирование через pprof
  • Pool
  • Покрытие кода тестами
  • XML
  1. Основы HTTP
  • Слушаем TCP-сокет с использованием пакета net
  • Обслуживание HTTP-запросов
  • Работа с параметрами запросов
  • Обслуживание статичных данных
  • Загрузка файлов формы
  • HTTP-запросы во внешние сервисы
  • Тестирование HTTP-запросов и ответов
  • Inline-шаблоны и шаблоны из файлов
  • Вызов методов и функций из шаблонов
  • Профилирование через pprof
  • Поиск утечки горутин
  • Трассировка поведения сервиса
  • Пример с telegram-ботом
  1. Анатомия веб-сервиса
  • Основные компоненты веб-сервиса
  • Основы middleware для HTTP
  • Context value
  • Обработка ошибок
  • Роутеры — gorilla/mux, httprouter
  • Производительный веб-сервер fasthttp
  • Парсинг параметров в структуру и валидация
  • Фреймворк Beego
  • Фреймворк Gin
  • Стандартный пакет log, zap, logrus
  • gorilla/websocket
  • Компилируемые шаблоны
  • Утилита dep
  1. SQL и NoSQL
  • database/sql и mysql
  • GORM — применение reflect’а для SQL
  • sql-injection
  • Memcached — пример с тегированным кешем
  • Redis
  • Message broker — RabbitMQ
  • Document store — MongoDB
  1. Микросервисы
  • Что такое микросервис, плюсы и минусы
  • Микросервисы внутри монолита
  • net/rpc и формат gob
  • net/http/jsonrpc
  • Формат сериализации protobuf
  • Делаем сервис на gRPC
  • Продвинутая работа с gRPC
  • Стриминг сообщений
  • Балансировка нагрузки и использование Consul
  • grpc-gateway — получаем доступ к grpc-сервисам через HTTP
  • Swagger — генерируем клиент и сервер из документации к апи
  1. Сервис в работе
  • Локальный конфиг — flags, json, ldflags
  • Удалённый конфиг, используем Consul
  • Зачем нужен мониторинг и что мониторить
  • Отправка таймингов во внешнюю систему
  • Пакет Unsafe
  • cgo — интеграция кода на cи
  • go vet, gometalinter
  1. Мок-тесты, JWT и CSRF-токены
  • Архитектура приложения, паттерн репозиторий.
  • Тестирование репозиториев и баз. Sqlmock и gomock.
  • Хеширование паролей.
  • CSRF-токены — на основе хеша, шифрования и JWT
  • Сессии. Stateful и stateless сессии. Подводные камни сессий на основе JWT.
  1. Oauth и проектирование API
  • Oauth
  • Горячая перезагрузка кода через Air
  • Встраивание статики через vfsgen
  • Проектирование API
  1. GraphQL
  • GraphQL — получение данны, мутаторы, сложность запросов, проблема N+1 запросов, директивы, загрузка файлов.
  • Встраивание GraphQL в демонстрационный проект
  • Структура приложения
  1. Контейнеры, S3 и трейсинг
  • Docker и golang
  • Оптимизация сборки докер-контейнера, многошаговая сборка
  • Docker-compose
  • Объектное хранилище S3, Minio
  • Организация ACL-доступа к картинкам
  • Конфигурирование через Viper
  • RequestID, трейсинг в GraphQL
  • Распределенный трейсинг с Jaeger.

Перейти на сайт курса

Цена: нет информации

Golang разработчик от mts teta

Golang разработчик от mts teta

Ссылка на официальный сайт: https://www.teta.mts.ru/golang

Изучение языка на реальных задачах с собеседованием в конце.

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

  1. Стандартные библиотеки и практики
  • Пакеты context, time, io, fmt, errors и encoding
  • Файлы конфигурации и логирование
  • Профилирование и оптимизация Go-программ
  • Профилирование через pprof
  • Трассировка поведения сервиса.
  1. Concurrency в Go
  • Примитивы синхронизации
  • Горутины и каналы
  • Concurrency patterns
  • Планировщик
  • Память и сборка мусора
  • Поиск утечки горутин.
  1. Документация и тестирование
  • OpenAPI Swagger (Swaggo)
  • Unit-тесты
  • Mock
  • Интеграционное тестирование (с помощью контейнеров)
  • Тестирование конкурентного кода.
  1. Работа с базами данных: PostgreSQL
  • Проектирование баз данных. Модификация и выборка данных
  • Транзакции. Триггеры и функции
  • Индексы. Профилирование и оптимизация запросов
  • Репликация. Полнотекстовый поиск. JSON.
  1. Работа с базами данных: MongoDB
  • CAP / PACELC теорема
  • Построение запросов
  • Индексирование
  • Конфигурирование
  • Работа с геоданными в MongoDB.
  1. Очереди данных
  • Основные концепции и архитектура Apache Kafka
  • Topic, partition и offset в Apache Kafka
  • Producer и consumer API
  • Command Sourcing
  • Event Sourcing.
  1. Архитектура, шаблоны проектирования и инструменты разработки
  • SOLID-принципы в Go
  • Монолит и микросервисы
  • Способы взаимодействия REST и gRPC
  • Паттерны Two-phase commit и Saga
  • Асинхронное взаимодействие
  • Docker и K8s для разработчиков
  • CI/CD. Линтеры кода, секьюрити чеки, подключение тестов
  • Мониторинг состояния приложения (Sentry, Elasticsearch, Kibana, Beats and Logstash, Prometheus, Grafana, Jaeger).

Стоимость: Бесплатно

Golang от ITVDN

Golang от ITVDN

Ссылка на официальный сайт: https://itvdn.com/ru/video/golang

Курс призван обучить новичков основам языка Go. После прохождения курса вы будете знать основные понятия и конструкции языка, правильно писать код на Go, а также уметь использовать инструментарий, описанный в курсе.

Чему научитесь:

  • Создавать простые приложения на Go
  • Работать со стандартными библиотеками и утилитами Go
  • Применять методы и функции
  • Работать с массивами, срезами, словарями и оператором range
  • Писать многопоточные приложения
  • Тестировать код и измерять производительность функций.

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

  • Введение. Основные понятия языка, стиль написания, пакеты и типы.
  • Первая программа. Утилиты Go.
  • Массивы, срезы, словари, оператор range.
  • Структуры и интерфейсы. Интерфейсный тип данных.
  • Многопоточность. Горутины, каналы, оператор select.
  • Пакеты. GoDoc
  • IO, пакет bytes, буферы.
  • Тестирование. Измерение производительности функций.

Цена: нет информации

Golang-разработчик от Центр компьютерного обучения «Специалист» при МГТУ им.Н.Э.Баумана

ТОП 20 лучших онлайн-курсов обучения Golang (Go)

Ссылка на официальный сайт: https://www.specialist.ru/track/dp-golang

Чему научитесь:

  • Знание Go, Python
  • PostgreSQL, REST API
  • Система управления Git
  • HTML и CSS
  • Linux, администрирование Debian, CentOS
  • Разработка и тестирование микросервисов.

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

  • Программирование на языке Python. Уровень 1. Базовый курс
  • HTML и CSS. Уровень 1. Создание сайтов на HTML 5 и СSS 3
  • Уровень 1. Основы администрирования систем Debian, Ubuntu, CentOS
  • Система управления версиями Git
  • Программирование на языке Go. Уровень 1. Основы языка Go
  • Программирование на языке Go. Уровень 2. Проектирование REST API
  • Программирование на языке Go. Уровень 3. Разработка веб-приложений
  • Разработка серверной части приложений PostgreSQL 12. Базовый курс.

Цена: 138 890 ₽ — 172 390 ₽

Golang-разработчик от Nordic IT School

Golang-разработчик от Nordic IT School

Ссылка на официальный сайт: https://inordic.ru/courses/golang

Научитесь создавать сервисы и приложения на языке компании Google! GO — один из самых быстрых языков для обработки огромного количества запросов.

Чему научитесь:

  • Основы языка и разработки сервисов с помощью Go
  • Научитесь создавать сайты и ботов на Golang
  • Управлять с их помощью компьютерами и серверами
  • Познакомитесь с Linux и PostgreSQL.

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

  • Введение в Golang
  • Основные понятия
  • Основы настройки серверов Linux
  • Работа с консолью
  • Производные типы
  • Объявление типов
  • Методы
  • Введение в интерфейсы
  • Параллельное программирование
  • Golang для веб
  • Создание telegram ботов
  • Базы данных
  • Совместная разработка
  • Основы GIT
  • Github
  • Автоматическое тестирование.

Цена: 68 000 руб.

Golang от Luxoft Training

Golang от Luxoft Training

Ссылка на официальный сайт: https://www.luxoft-training.ru/kurs/golang.html

Базовый курс по языку программирования Go. Рассматриваются основные типы данных языка, управляющие структуры, особенности стиля программирования и встроенные инструменты компилятора. Дополнительное внимание уделяется возможностям стандартной библиотеки, а также приводятся примеры решения практических задач, в частности реализация REST-интерфейсов.

Чему научитесь:

  • использовать типы данных и синтаксические конструкции языка Go.
  • поймёте объектно-ориентированную модель языка и научитесь проектировать в соответствии с ней программные компоненты.
  • поймёте основные сложности разработки конкурентного программного кода и способы их устранения.
  • научитесь использовать встроенные инструменты языка и разрабатывать код в соответствии с ожиданиями сообщества разработчиков.
  • научитесь решать практические задачи на уровне, достаточном для промышленного применения.

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

  1. Environment setup
  • Как установить и настроить компилятор языка Go.
  • Пример написания, компиляции и запуска простой программы на языке Go.
  1. Go IDEs
  • Какие интегрированные среды разработки можно использовать для написания кода на языке Go, как их установить и настроить.
  1. Go tools
  • Основной инструментарий поддержки процесса разработки.
  • Как скомпилировать и запустить программу на языке Go, как получить доступ к документации, а также добавить документацию в собственный код.
  1. Directory structure.Go modules. Packages
  • Как организовать структуру директории проекта так, чтобы она соответствовала общепринятым правилам.
  • Способы декомпозиции кода на отдельные составляющие для удобства последующей поддержки и повторного использования.
  1. Installing dependencies
  • Использование готовых решений вместо написания собственного кода. Управление зависимостями и распределенное хранение пакетов.
  1. Data types and variables declaration. Zero values. Type conversions
  • Представление примитивных значений в языке и выполнение базовых операций над ними.
  1. Branching and loops. break, continue, fallthrough, goto
  • Описание алгоритмов с помощью циклов и ветвлений, отличие синтаксических конструкций в Go от других языков программирования.
  1. Containers: arrays, slices, maps
  • Как хранить последовательности значений: массивы, срезы и хеши, их внутреннее представление и примеры использования.
  1. Multiple return values. Variadic parameters. Function literals and closures
  • Определение функций и передача параметров.
  • Функции с произвольным количеством аргументов.
  • Функциональные возможности языка, анонимные функции и замыкания.
  1. Types declarations. Constants, Iota. Structures. Embedded structs. Anonymous structs. Nested structs
  • Способы определения пользовательских типов и констант, описание последовательностей значений.
  • Как описать сущности предметной области при помощи конструкций языка.
  1. Value and references types
  • Управление памятью и указатели.
  1. Defer statement
  • Оператор отложенного вызова функций.
  1. Error handling. Panic, recover
  • Как обнаружить и обработать ошибки времени выполнения.
  • Способы написания надежного и отказоустойчивого кода.
  1. Methods and interfaces. Method expressions
  • Понятие интерфейса и его реализации.
  • Построение объектно-ориентированного кода на основе интерфейсов.
  • Методы.
  1. Concurrency vs parallelism. Goroutines. Memory model
  • Как делать несколько вещей одновременно.
  • Организация конкурентного выполнения на основе горутин.
  • Модель памяти в Go.
  1. Blocking and unblocking channels. select statement.
  • Способ написания надежного конкурентного кода: обмен данными между горутинами на основе каналов.
  1. Waitgroups, mutexes, atomics
  • Синхронизация отдельных частей программы.
  1. Reading and writing files
  • Как сохранять данные между отдельными запусками программы.
  1. Standard library: fmt, log, strings, time, sort, http, math, regexp
  • Встроенные механизмы языка для решения повседневных задач.
  1. Testing and benchmarking
  • Как гарантировать стабильность программного кода с помощью модульных тестов, а также найти наиболее эффективное решение задачи.
  1. JSON encoding and decoding
  • Обмен данными с программами, написанными на других языках.
  1. PostgreSQL. MongoDB
  • Хранение данных в реляционных базах.
  1. REST application example
  • Пример полноценного бек-енд приложения.
  1. Unsafe package
  • Расширения языка для выполнения небезопасных функций.

Цена: 37 400 руб.

Программирование на Go от Stepik

Программирование на Go от Stepik

Ссылка на официальный сайт: https://stepik.org/course/51100/promo

Вводный курс по языку программирования Go. После курса вы сможете написать своё сетевое многопоточное приложение чата, научитесь получать данные по сети и разбирать их (парсить), поймёте, где и как можно применять Go.

Чему научитесь:

  • Сможете написать своё сетевое многопоточное приложение чата
  • Научитесь получать данные по сети и разбирать их (парсить)
  • Поймёте, где и как можно применять Go.

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

  1. Введение в Go
  • Что такое Go. Краткая история
  • Классический пример — Hello, world!
  • Основные возможности языка Go.
  1. Фундаментальные и составные типы данных
  • Имена, числа, булевы значения
  • Строки
  • Константы
  • Массивы и срезы
  • Отображения
  • Структуры
  • JSON
  • Указатели, время жизни переменных
  • Документирование кода и пакетов.
  1. Функции. Методы
  • Объявления функций
  • Рекурсивные вызовы
  • Множественный возврат значений
  • Ошибки. Стратегия обработки
  • Значения — функции
  • Анонимные функции
  • Вариативные функции
  • Отложенные вызовы функций
  • Объявления методов
  • Значения — методы и выражения — методы
  • Переопределение методов
  • Инкапсуляция
  • Интерфейсы.
  1. Подпрограммы и каналы
  • Go подпрограммы
  • Каналы
  • Параллельные циклы
  • Чат — сервер
  • Тестирование.
  1. Итоговые задачи
  • Задачи по материалам курса.

Цена: 4 400 ₽

Golang от NIX LTD

Ссылка на официальный сайт: https://www.nixsolutions.com/ru/study-center/courses/onlajn-obuchenie-golang/

Курс включает в себя теорию и практические задания для ее закрепления. Если вдруг заблудишься в потоке информации или столкнешься с нерешаемой задачей — эксперты всегда придут к тебе на помощь.
Успешное прохождение программы подготовит тебя к собеседованию на вакансию Junior Golang Developer в нашу команду.

Чему научитесь:

  • Освоишь базовые концепции Go и VueJS;
  • инструментарий для работы в реальном проекте;
  • разработку на современном фреймворке;
  • азы full-stack.

Бесплатно

Golang от ITEA

Golang от ITEA

Ссылка на официальный сайт: https://onlineitea.com/course/go-basic/

Пройди Golang обучение с нуля, чтобы понять основы одного из ведущих языков программирования 2021 года, изучить его идиомы и разобраться, как избежать типичных ошибок айтишника. Образовательная программа академии позволит полноценно погрузиться в разработку на Go для решения практических заданий и прокачки навыков в языке и технологическом стеке.

Чему научитесь:

  • Писать консольно-сервисные приложения
  • Разрабатывать консольное ПО на языке Go, под разные ОС и разные архитектуры.

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

  1. Введение
  • Что такое Go
  • История
  • В чем преимущество Go над другими языками
  • Какие задачи язык Go позволяет решать очень эффективно
  • Современность языка Go
  1. Основы Git
  2. Настройка среды Go
  • Установка Go
  • Установка дополнительных инструментов для эффективной работы с языком Go
  • Разбор основных утилит для работы с Go
  • Быстрая настройка среды Go на примере Visual Studio Code
  • Первая программа
  • Самый простой Web Server на Go за 1 минуту
  1. Основы
  • Типы данных
  • Переменные
  • Константы
  • Указатели
  • Пакеты и импорт
  • Область видимости
  1. Основные операции языка
  • Логические операции
  • Арифметические операции
  • Поразрядные операции
  • Инкремент и декримент
  1. Управление ходом программы (Control flow)
  • Оператор if
  • Оператор цикла for
  • Оператор switch
  1. Составные типы
  • Массивы
  • Slice
  • Тип map
  • Структуры
  • Range
  1. Функции в Go
  • Базовые понятия функций
  • Определение функции
  • Передача параметров в функцию
  • Множественный возврат значений с функции
  • Функции с переменным числом параметров
  • Рекурсия
  • Работа с файлами
  1. Обработка ошибок в Go
  • Возврат ошибки из функции
  • Deferred функции
  • Panic и Recover
  1. Более сложные возможности Go
  • Методы в Go
  • Интерфейсы в Go как простой подход реализации полиморфизма
  • Рефлексия
  • Пакеты
  • Низкоуровневое программирование
  1. Параллелизм в Go
  • Goroutines и каналы
  • Разделяемые переменные (мьютексы)
  1. Обзор стандартной библиотеки.

Цена: 22 650 рублей

Go программирование от Академия IT

ТОП 20 лучших онлайн-курсов обучения Golang (Go)

Ссылка на официальный сайт: https://academiait.ru/course/izuchaem-go-programmirovanie-na-golang-learn-go/

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

  • Типы и переменные в Golang. Программирование на Go #1
  • Переменные и ошибки с ними. Программирование на Go #2
  • Циклы в Go. Программирование на Go #3
  • Массивы и срезы в Go. Программирование на Go #4
  • Карты в Maps in Go. Программирование на Go #5
  • Функции в Go. Программирование на Go #6
  • Структуры в Go. Программирование на Go #7
  • Организация кода в Go. Программирование на Go #8
  • Какие книги читать по Golang???
  • Библиотека Sort. Программирование на Go #9
  • Парсер на Telegram и Go. Программирование на Go #10
  • Telegram bot на Go. Используем webhook. Программирование на Go #11
  • Telegram bot на Golang. Собираем данные пользователей. Программирование на Go #12
  • Telegram bot на Golang. Собираем данные пользователей. Программирование на Go #12
  • Фильтр сообщений для Telegram на Go. Программирование на Go #13
  • Telegram bot на Go. Отправляем фото из облачного хранилища. Программирование на Go #14
  • Golang ищем заказы на фриланс #4. Go http, telegram, api
  • Go with Docker. Упаковываем приложение Go в Docker. Изучаем Golang #15
  • Пишем Mysql Exporter для Prometheus на Golang
  • [Go] ошибки новичков #2 (язык программирования Go)
  • [GO] простая веб форма авторизации (golang, templates, шаблоны, web).

Бесплатно

Go-разработчик от TeachMeSkills

ТОП 20 лучших онлайн-курсов обучения Golang (Go)

Ссылка на официальный сайт: https://teachmeskills.by/kursy-programmirovaniya/go-developer-online

Научим с нуля языку программирования Go за 4 месяца.

Чему научитесь:

  • Изучишь язык GO, все его особенности и конструкции
  • Научишься создавать серверные приложения быстро и эффективно
  • Научишься писать качественный и лаконичный код, который легко читать и поддерживать
  • Научишься выбирать и правильно применять сервисную архитектуру
  • Научишься выбирать и использовать базы данных
  • Научишься полному жизненному циклу разработки CI/CD от момента написания кода до релиза.

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

  1. Основы Computer Science
  • Введение в программирование
  • Классификация языков программирования
  • Парадигмы программирования
  • Устройство архитектуры компьютера и сетей
  • Работа операционных систем
  • Работа интернета, протоколы (TCP/IP, HTTP, FTP, SMTP, POP).
  1. Работа с Git
  • Введение в Git
  • Установка и настройка Git
  • Работа с командами Git
  • Git Flow
  • Сложные операции
  • Обзор основных репозиториев (Github, Gitlab, Bitbucket).
  1. Основы Linux и работа с ним
  • Знакомство и установка
  • Работа в графическом и консольном режиме
  • Пользователи. Управление пользователями и группам
  • Загрузка ОС и процесс
  • Устройство файловой системы Linux.
  • Понятия файла и каталога
  • Веб-сервисы.
  1. Введение в экосистему Golang
  • Обзор инструментов разработки
  • Работа с плейграундом и основы тулчейна
  • Настройка окружения
  • Переменные окружения Golan
  • Работа с консолью/ID
  • Менеджер зависимостей Go Modules
  1. Основы Go (Часть 1)
  • История возникновения языка Go
  • Основные особенности языка Go
  • Базовые типы данных
  • Переменные
  • Основные синтаксические конструкции (ветвления, циклы)
  1. Основы Go (Часть 2)
  • Функции
  • Массивы, слайсы, мапы (array, slice, map)
  • Структуры (struct)
  • Интерфейсы (interface)
  • Объектная модель GO
  1. Алгоритмы и структура данных в Go
  • Базовые алгоритмы
  • Простые и сложные алгоритмы
  • О-нотация
  • Массив, список, очередь, стек. Представление в памяти
  • Алгоритмы сортировки. Деревья, хэш-функция
  1. Асинхронная модель Go (Часть 1)
  • Потоки и процессы ОС
  • Отличие concurrency от многопоточности
  • Методы обработки запросов и плюсы неблокирующего подхода
  • Горутины
  • Каналы
  • Мультиплексирование каналов (select)
  • Таймеры и таймауты
  1. Асинхронная модель Go (Часть 2)
  • Асинхронное получение данных
  • Пакет context и отмена выполнения
  • Пул воркеров
  • Механизмы синхронизации (каналы, sync.Waitgroup, sync.Mutex, sync.Atomic)
  • Race condition
  • Ограничение по ресурсам
  1. Работа с динамическими данными и производительность
  • Работы с JSON
  • Нюансы работы с JSON
  • Работа с XML
  • Pool
  • Кодогенерация
  • Пакет reflect
  1. Работа с сетью. Веб приложения, сервисы
  • Протокол HTTP/HTTPS Web-приложения
  • Обработка пользовательского ввода
  • Конфигурирование
  • Логирование. Обработка ошибок
  • HTTP-запросы в сторонние сервисы
  1. Работа с текстом, файловая система
  • Кодировки
  • Работа с файлами
  • Основные функции работы с файлами и строками
  • Работа с внешними данными: JSON, CSV, Excel
  • Буффер данных
  1. Базы данных (Часть 1)
  • Классификация БД
  • Реляционные базы данных
  • Язык запросов SQL
  • ORM
  • Проектирование баз данных
  1. Базы данных (Часть 2)
  • Пакет database/sql
  • GORM
  • SQL-injection
  • Memcached
  • Redis
  • Document storage (MongoDB)
  1. Базы данных. Практика (Часть 3)
  • Взаимодействие GO с SQL-решениями на примере PostgreSQL
  • Взаимодействие GO с SQL-решениями на примере Redis
  • Взаимодействие GO с SQ-решениями на примере Mongo
  • Взаимодействие GO с SQL-решениями на примере Neo4J
  1. Тестирование
  • Разновидности тестов
  • Unit-тестирование в GO
  • Mock, существующие пакеты для моков
  • End-2-end тесты
  • Бенчмарки в GO (тестирование производительности)
  1. Golang concurrency паттерны
  • Базовые паттерны (waiting for task, waiting for result, waiting or finish)
  • Pooling pattern
  • Fan In/Fan out
  • Drop pattern
  • Cancelletion pattern
  • Context
  • Failure Detection
  1. Профилирование и работа с памятью
  • Профилирование
  • Escape-анализ
  • Модель памяти GO
  • Области памяти в GO (heap, stack)
  • Сборка мусора
  1. Микросервисные приложения на Go (Часть 1)
  • Что такое микросервис, плюсы и минусы
  • Монолит и микросервисы
  • Создание REST API
  • Сетевое взаимодействие
  • Проектирование REST API
  • Взаимодействие с базой данных
  • Создание API с помощью OpenAPI. Тестирование API
  1. Микросервисные приложения на Go (Часть 2)
  • Что такое RPC
  • net/rpc и формат gob
  • net/http/jsonrpc
  • Формат сериализации protobuf
  • Продвинутая работа с gRPC
  • Стриминг сообщений
  • gRPC-gateway — получаем доступ к grpc-сервисам через HTTP
  1. Лучшие практики разработки Go-приложений
  • Принципы структурирования Go-приложений
  • Обработка сигналов
  • Логирование
  • Конфигурация приложения
  • Линтеры
  • Сборка приложений и автоматизация повторяющихся действий (Makefile)
  • Шаблонизирование и автоматизация создания новых сервисов
  1. Очереди и брокеры сообщений
  • Принцип работы месседж брокеров
  • RabbitMQ: установка и принципы работы
  • Постановка задач через API в RabbitMQ
  • Обработка задач поисковым роботом из RabbitMQ
  • Apache Kafka: отличия и принцип работы
  1. Продвинутые особенности языка GO
    • Reflect
    • Unsafe
  • Go generate
  • Низкоуровневое программирование (cgo)
  1. Архитектурные практики
  • Шаблоны: порождающие, структурные, поведенческие
  • Принципы SOLID, KISS, DRY
  • Применение шаблонов проектирования в проекте
  1. DevOps-практики
  • Docker
  • Kubernetes
  • Мониторинг и анализ логов (Console, Graylog, ELK)
  • Развёртывание CI/CD-пайплайна (Jenkins, CircleCI)
  • Opentracing
  1. Закрепление пройденного материала
  • Повторение изученного материала
  1. Хакатон
  2. Онлайн-тренинг «Трудоустройство в IT»
  • Составление резюме (теория + практика)
  • Составление профиля на LinkedIn (теория + практика)
  • Прохождение интервью
  • Soft skills, которые важны в рамках интервью
  • Проведение пробного интервью.

Цена: 54 700 RUB

Комментарии (0)
Войдите чтобы оставить комментарий