Golang, также известный как Go, является относительно новым языком программирования, разработанным в Google. Он был создан с целью обеспечения более простого и эффективного способа написания программного обеспечения. Golang используется для создания высокопроизводительных систем и сетевых приложений.
На курсах Golang можно научиться разрабатывать быстрые, эффективные и надежные программы. Вы научитесь использовать синтаксис языка Golang и его стандартную библиотеку, а также изучите основные концепции языка, такие как указатели, структуры, интерфейсы и горутины. Кроме того, вы научитесь создавать сетевые приложения с помощью Golang и использовать его для работы с базами данных.
1 место. Курс «Профессия Go-разработчик от Skillbox»
Цена курса: Рассрочка на 22 месяца – 5 677 ₽ / мес
Ссылка на сайт: https://skillbox.ru/course/profession-godev/
Google представил простой, универсальный и эффективный язык программирования под названием Go. Благодаря этому языку, вы сможете освоить создание приложений с микросервисной архитектурой с нуля. На Go-разработчиков претендуют такие компании, как Google, Dropbox, SoundCloud, Ozon, Yandex, Mail.ru и Twilio.
- Продолжительность курса составляет 12 месяцев.
- Курс включает в себя 5 программ.
- Мы гарантируем трудоустройство или вернем вам деньги.
- Пожизненный доступ к курсу.
Go – новый и востребованный язык программирования, разработанный специально для создания высоконагруженных приложений. Его редко выбирают новички, что является ошибкой, так как синтаксис Go прост и лаконичен, позволяя быстро освоить язык даже тем, кто не имеет опыта в программировании.
Кому будет полезен этот курс:
- Новичкам в программировании:
Вы освоите востребованную профессию с нуля: научитесь принципам работы с операционными системами и обменом данных, создавать и оптимизировать приложения на Go. Сможете начать карьеру программиста. - IT-специалистам:
Расширите свой набор навыков и изучите новый язык системного программирования. Вы научитесь создавать поддерживаемые приложения, работать с микросервисной архитектурой и высоконагруженными системами. Сможете решать больше задач и стать специалистом широкого профиля.
Что вы изучите на курсе:
- Разработка приложений на Go.
- Работа с файловой системой.
- Работа с алгоритмами поиска и сортировки.
- Понимание принципов работы операционных систем и обмена данными по сети.
- Программирование многопоточных распределенных систем для высоконагруженных проектов.
- Сборка, тестирование и развертывание готовых приложений.
- Работа с системой контроля версий Git.
- Проведение код-ревью.
- Развитие навыков мягкого навыка программиста.
Содержание курса:
Вас ожидают вебинары и практические занятия на основе реальных сценариев.
40 тематических модулей, 167 видеоуроков.
– Основные курсы:
- Курс “Разработчик на Go”:
- Введение: первая программа.
- Основные типы данных. Целочисленные типы. Работа с данными и вычислениями.
- Работа со строками.
- Условный оператор “if”.
- Логические операторы и составные условия.
- Основы циклов: использование цикла “for” как точки входа.
- Вложенные циклы.
- Оператор “switch”.
- Диапазоны значений.
- Числа с плавающей запятой. Математические вычисления.
- Комплексные типы данных. Работа со строками.
- Работа с файлами.
- Функции в программировании.
- Функции с возвращаемыми значениями.
- Составные типы данных. Одномерные массивы. Основные алгоритмы с использованием массивов.
- Настройка среды разработки JetBrains GoLand, создание проекта в JetBrains GoLand.
- Отладка и логирование.
- Точки останова (breakpoints).
- Простые алгоритмы с использованием массивов.
- Двумерные массивы.
- Анонимные функции.
- Продвинутые алгоритмы с использованием массивов. Поиск.
- Сортировка с более низкой алгоритмической сложностью.
- Составные типы данных. Срезы. Динамическое выделение памяти.
- Подмножества и работа со срезами.
- Работа со строками и текстовыми данными. Основные алгоритмы со строками.
- Составные типы данных. Карты и структуры.
- Переиспользование кода, модульность.
- Многопоточность, работа с каналами.
- Обмен данными по сети.
- Микросервисная архитектура.
– Бонусные курсы:
- SQL – язык запросов к базам данных.
- Универсальные навыки программиста.
- Использование системы контроля версий Git.
- Английский язык для IT-специалистов.
- Карьерный рост и развитие программиста.
- Итоговый проект:
Разработка сетевого многопоточного демона. В рамках проекта вы создадите демона на языке Golang. Его задачей будет принимать сетевые запросы, распределять их между несколькими микросервисами с использованием многопоточной обработки. Вы определите архитектуру микросервисов, взаимодействие между ними, протоколы обмена данными, а также организуете параллельную работу, возможность горизонтального масштабирования и балансировку.
Спикеры (учителя/преподаватели) курса:
- Кирилл Просвиров
Technical Marketing Engineer в компании Cisco - Алексей Лосев
Главный архитектор в АНО ЭИСИ - Антон Жуков
Highload Engineer. Area Tech Leader - Александр Соколов
Integration Development Teamlead в Ostrovok - Владимир Паценко
Senior golang developer, работал в SberDevices, на данный момент – golang-разработчик в vivid.money.
Отзывы об обучении в Skillbox доступны на сайте.
Сертификат Skillbox
Подтвердит, что вы прошли курс, и станет дополнительным аргументом при устройстве на работу.
Плюсы курса:
- Обучение на практике
- Подробная программа обучения
- Итоговый проект в портфолио
Минусы:
- Не найдено
2 место. Курс «Профессия Разработка на Go от GeekBrains»
Стоимость курса: Рассрочка до 36 месяцев – от 3 066 ₽ / мес
Ссылка на сайт: https://gb.ru/professions/go-developer
Получите навыки создания безопасных и масштабируемых приложений и сервисов с использованием современного языка программирования от Google. Этот язык широко применяется в крупных IT-компаниях, таких как IBM, Intel и Adobe, а также в России его используют ВКонтакте, Avito и Ozon.
- Продолжительность курса – 12 месяцев, 2 занятия в неделю.
- Вы получите свидетельство о прохождении курса и 5 проектов для своего портфолио.
- Мы также предоставляем помощь в трудоустройстве после окончания курса.
Кому подойдет этот курс:
- Для начинающих
Курс по Golang идеально подходит в качестве первого языка программирования. Он обладает простым синтаксисом и краткой документацией. Для его освоения не требуется техническое предварительное образование. - Для опытных разработчиков
Многие компании переходят на использование Go и ищут специалистов, обладающих знаниями двух языков программирования. Если у вас есть опыт работы с PHP, C/C++, JavaScript, Ruby или другими языками, вы сможете зарабатывать больше, освоив Go.
Наши студенты достигают успеха:
Никита Ермаков
Junior Java-разработчик в EPAM Systems
«Мне 26 лет. Раньше я жил в Старом Осколе Белгородской области и работал резчиком металла на металлургическом комбинате. Перемены в жизни я планировал долго: записался на курс в GeekBrains и собирался после него начать искать вакансии. Но меньше, чем через год после старта учебы, я нашел работу в IT и переехал в Москву.
Сейчас я Junior Java-разработчик в EPAM Systems. Это крупнейший производитель заказного ПО в мире.»
Программа курса:
- Основы программирования:
- Введение в программирование, переменные и типы данных.
- Работа с блок-схемами и условными операторами.
- Циклы.
- Функции.
- Работа с массивами.
- HTML/CSS. Интерактивный курс:
Вы познакомитесь с основами веб-разработки и создадите простой веб-сайт.
- Основные понятия в веб-разработке.
- Основы языка разметки HTML.
- Основы языка стилей CSS.
- Работа с псевдоклассами, псевдоэлементами и табличной версткой.
- Формирование блочной модели и блочная верстка.
- Работа с макетом дизайна в формате PSD.
- Разметка сайта и знакомство с Bootstrap.
- Стандарты веба и вспомогательные инструменты.
- Базовый видеокурс по Git:
Вы познакомитесь с Git – системой контроля версий, широко используемой программистами в учебных и коммерческих проектах.
- Введение в Git.
- Установка и настройка Git.
- Основные команды терминала.
- Работа с репозиториями.
- Управление файлами в репозитории.
- История изменений.
- Работа с ветками репозитория.
- Публикация репозитория.
- Слияние веток.
- Управление версиями.
- Создание pull-request.
- Сложные операции.
- Работа с форк-репозиториями.
- Базовый курс по JavaScript:
Вы познакомитесь с программированием на языке JavaScript для создания простых веб-страниц.
- Основы языка JavaScript.
- Основные операторы.
- Циклы, массивы, структуры данных.
- Работа с объектами.
- Введение в DOM (объектную модель документа).
- Обработка событий.
- Урок-практикум.
- Анонимные функции, замыкания.
- Рабочая станция:
Часто бэкенд-приложения на Go разворачивают на операционной системе Linux. В этом курсе вы познакомитесь с особенностями Linux и научитесь эффективно работать в разработке.
- Установка операционной системы Linux.
- Настройка командной строки.
- Управление пользователями и группами.
- Процессы, загрузка операционной системы.
- Go. Уровень 1:
В этом курсе вы ознакомитесь с основными инструментами и основными типами данных в Go, а также научитесь создавать простые консольные приложения.
- Особенности и история развития языка Go. Работа с Playground и основы инструментов.
- Базовые типы данных. Основы ввода-вывода в операционной системе. Структурирование Go-приложений.
- Операторы и управляющие конструкции, базовые функции.
- Сложные типы данных: массивы, срезы и карты.
- Сложные типы данных: структуры, функции и методы.
- Сложные типы данных: указатели.
- Интерфейсы. Обработка ошибок. Основы обработки ошибок.
- Основы настройки приложений.
- Работа с файловой системой.
- Основы тестирования Go-приложений.
- Финальная консультация по курсу. Ответы на вопросы.
- Go. Уровень 2:
На этом уровне курса вы познакомитесь с возможностями параллельных вычислений в конкурентной модели, научитесь управлять зависимостями и писать простые асинхронные приложения.
- Расширенная генерация и обработка ошибок, работа с panic. Отложенные вызовы функций.
- Кросс-компиляция в Go и более глубокое понимание инструментов.
- Работа с внешними зависимостями.
- Конкурентность, часть 1: горутины и каналы.
- Конкурентность, часть 2: основные типы данных из пакета sync.
- Конкурентность, часть 3: планировщик горутин, race condition и проверка наличия.
- Рефлексия и кодогенерация в Go.
- Основы работы со стандартной библиотекой Go. Подготовка к курсовому проекту.
- Лучшие практики разработки Go-приложений:
На этом курсе вы познакомитесь с современными практиками разработки на Go и научитесь их применять в своих проектах. Эти навыки пригодятся при разработке как простых утилит, так и высоконагруженных сервисов.
- Обработка ошибок сторонних сервисов и сигналов операционной системы.
- Логирование.
- Разработка бэкенда, Уровень 1
Овладейте навыками создания приложений на языке Go, проектирования и поддержки бэкенд-части. В конце курса вы разработаете проект – сокращатель ссылок.
- Основы взаимодействия в сети
- Протокол HTTP и проектирование RESTful API
- Реализация и тестирование обработчиков HTTP-запросов
- Выбор роутера и библиотек. Промежуточное программное обеспечение. Контекст запроса.
- Практическое занятие, часть 1. Создание сервера
- Практическое занятие, часть 2. Создание веб-приложения
- Особенности докеризации приложений на Go.
- Сборка и развертывание приложения. Непрерывная интеграция и доставка (CI/CD).
- Базы данных
Вы познакомитесь с работой реляционных баз данных, научитесь создавать свои собственные базы данных, изменять их структуру и управлять данными с использованием SQL.
- Введение в теорию реляционных баз данных
- Основные понятия структуры базы данных
- Определение данных, основные операции с данными
- Извлечение данных, агрегация данных
- Вложенные запросы и объединение UNION
- Объединение JOIN
- Расширенные возможности SQL
- Оконные функции, индексы, работа с графическим клиентом
- Postgres для разработчиков на Go
Вы попробуете себя в роли администратора баз данных, научитесь работать с системой управления базами данных PostgreSQL и интегрировать ее в свои проекты.
- Начало работы с PostgreSQL: основные инструменты, сравнение с другими СУБД
- Работа с структурой базы данных, CTE, анализ требований при поиске данных
- Анализ выполнения запросов и индексирование данных
- Использование PostgreSQL в приложениях на Go
- Структура приложения, тестирование, миграции, ORM
- Уровни изоляции, конкурентный доступ, очистка, репликация.
- Осуществление наблюдаемости и оптимизация
Вы узнаете, как анализировать производительность программ и оптимизировать их путем использования профилирования, трассировки и кэширования.
- Мониторинг и оповещение
- Журналирование и обработка ошибок
- Профилирование и трассировка
- Оптимизация и кэширование
- Backend-разработка. Уровень 2
Вы научитесь разворачивать приложения в Kubernetes и управлять ими, познакомитесь с различными протоколами API и принципами проектирования микросервисов.
- Принципы взаимодействия микросервисов
- JSON-RPC и gRPC
- GraphQL
- Запуск Go-приложений в Kubernetes. Настройка. Мониторинг. Отладка.
- Кластер Kubernetes
- Очереди
- Функциональное тестирование / BDD
- Основы безопасности Go-приложений
- Подготовка к собеседованию Go-разработчика
Вы создадите привлекательное резюме и подготовитесь к техническому собеседованию. Сможете собрать свое собственное портфолио на GitHub из своих проектов.
- Создание портфолио на GitHub
- Гибкие навыки Go-разработчика
- Прохождение технического собеседования
- Консультация по портфолио
- Командная разработка микросервисного проекта
Вы узнаете, как вести разработку в быстро изменяющейся среде: научитесь работать с большими задачами от заказчиков, разбивать их на части и правильно определять их приоритеты. Вы будете реализовывать собственные микросервисы в командной работе.
- Совместная работа над проектированием сервисов. RFC и документы дизайна
- Практики совместной работы с Git. Обзор кода
- Совместное тестирование и развертывание сервисов
- Ответственность разработчика. Чек-листы готовности к производству
- Практика дежурств по oncall. Инциденты и пост-мортемы
- Три консультации по вашему проекту.
Вас будут обучать топовые эксперты
- Елена Граховац
Engineering Manager в GetYourGuide, автор программы «Разработка на Go» - Дмитрий Шеламов
Middle GoLang Developer в Dr.Cash - Сергей Яныкин
Team Lead в Delivery Club.
И др.
3 место. Курс «Golang Developer. Professional от OTUS»
Цена: 65 900 ₽
Ссылка на сайт: https://otus.ru/lessons/golang-professional/
От фундаментальных аспектов языка до разработки собственного микросервиса на Go. Для тех, кто стремится к более глубокому пониманию внутреннего устройства Golang и его взаимодействия с другими системами.
- Продолжительность обучения: 5 месяцев, 4 академических часа в неделю.
- Формат: Онлайн.
При переходе на язык программирования Go люди часто сталкиваются с различными неудобствами, вызванными отличиями Go от других языков. В этом курсе мы хотели бы объяснить концепцию “Go-way”, рассказать о языковых идиомах и помочь избежать типичных ошибок. Программа курса позволит вам погрузиться в разработку на Go для решения практических задач и углубить знания языка и связанных с ним технологий.
Первые занятия посвящены основам Go. Поэтому программа подходит для тех, кто уже имеет опыт программирования на других языках и хочет быстро перейти к более продвинутым темам. Для тех, кто уже знаком с Go, начало курса поможет систематизировать и обновить базовые знания.
Этот курс подойдет для:
- веб-разработчиков, которые хотят переквалифицироваться на Go и расширить свой уровень мастерства;
- всех, кто уже понимает основы Go и хочет научиться применять язык правильно.
После окончания курса выпускники смогут:
- писать код, готовый к использованию в производстве, включая многопоточные и конкурентные программы;
- понимать синтаксис и внутреннюю структуру языка Go;
- учитывать особенности сетевого программирования;
- создавать микросервисы с помощью Go;
- развертывать микросервисы с использованием Docker.
Программа курса:
- Начало работы с Go
- Инструментарий и первые шаги в Go
- Тестирование в Go
- Основные типы данных в Go
- Массивы, срезы и карты
- Структуры
- Функции и методы
- Интерфейсы
- Обработка ошибок. Понятие паники
- Параллельность в Go
- Goroutine и каналы
- Примитивы синхронизации
- Паттерны параллельного программирования
- Внутреннее устройство Go. Планировщик
- Внутреннее устройство Go. Память и сборка мусора
- Обзор домашних заданий и ответы на вопросы
- Стандартные библиотеки и bewgтики
- Работа с вводом/выводом в Go
- Форматирование данных
- Взаимодействие с операционной системой
- Рефлексия
- Генерация кода в Go
- Файлы конфигурации и логирование
- Профилирование и оптимизация программ на Go
- Работа с сетью и базами данных
- Контекст и низкоуровневые сетевые протоколы
- Работа с SQL
- Работа с HTTP
- Работа с gRPC
- Микросервисы
- Монолит и микросервисная архитектура
- Очереди сообщений
- Docker
- Тестирование микросервисов
- Мониторинг
- Проект
- Проектная работа. Вводная часть
- Консультация по проектам
- Заключительное занятие.
Выпускной проект:
В конце курса студентам будет предложено выполнить один из трех проектов на выбор:
- Сервис для борьбы с брут-форс атаками
- Сервис для генерации превью изображений
- Простая система сбора данных.
После обучения Вы получите сертификат о прохождении курса.
Преподаватели:
- Артем Желтак
Teamlead в inDriver - Алексей Бакин
Enapter - Олег Венгер
Avito, внутренняя разработка - Александр Воробьев
Ведущий бэкенд разработчик Golang - Семен Шаплыгин
Ads Platform от SberMarket.
И др.
Отзывы:
Марат
«Очень сильный курс! Отлично структурированный и детально проработанный. Преподаватели – действующие разработчики, которые делятся своим опытом во время обучения. Большой плюс курса – наличие достаточно сложных домашних заданий. Для их выполнения нередко приходилось потратить несколько дней. Из этого следует и одно пожелание для улучшения курса – сократить время проверки домашних заданий.»
Равиль Галактионов
«В целом я доволен курсом. В процессе изучения я уже начал на работе применять всё то чему научился, и уже большую часть времени пишу на Go и планирую полностью перейти на данный язык. Курс дал мотивацию в изучении языка и все необходимые материалы для старта. Спасибо команде Отуса за проделанную работу.»
Курс «Backend- разработчик на Go от SkillFactory »
Цена курса Go: Рассрочка на 36 месяцев – 2 933 ₽ / мес
Ссылка на сайт: https://skillfactory.ru/backend-razrabotchik-na-golang
Вы изучите программирование на языке Go с самого начала.
- Развитие мышления программиста
Мы поможем вам развить “мышление программиста”: вы научитесь мыслить алгоритмически и эффективно разбирать сложные задачи в своем уме. - Теория и практика
Обучение разработке на Go состоит из множества маленьких шагов и направлено на закрепление практических навыков. У нас есть тренажеры, мини-проекты, интерактивные вебинары, цепочка проектов и командный проект. - Ментор и сообщество
Вы не останетесь один на один со своими вопросами. Мы организуем сессии вопросов и ответов с ведущими экспертами, предоставим персональную обратную связь по всем вопросам от менторов и поддержку со стороны кураторов, которые помогут вам дойти до конца.
Краткая программа:
– 1 блок. Основы Go и Computer Science
- Вводный блок
- Основные понятия в IT-области
- Классификация языков программирования
- Современные технологии и работа интернета
- Архитектура компьютера и операционных систем
- Основы языка Go
- Установка окружения, компиляция и запуск программ на Go, основные синтаксические конструкции (пакеты, переменные и типы данных, константы, строки)
- Условные операторы и циклы
- Функции и методы, структуры
- Обработка ошибок и паник, интерфейсы, рекурсия
- Массивы, словари, срезы, строки, руны и байтовые срезы
- + 1 неделя практики
- Алгоритмы и структуры данных на Go
- Введение, сложность алгоритмов и асимптотическая нотация
- Массивы, связные списки, очереди, стеки. Представление в памяти
- Алгоритмы сортировки
- Деревья, графы, алгоритмы поиска
- Хэш-таблицы, хэш-мапы, хэш-функции
- Основы многопоточности
- Понятие процесса и потока в операционной системе
- Горутины и базовая синхронизация
- Синхронизация с использованием атомиков и каналов
- Wait group, основные шаблоны использования горутин
- Выполнение проекта: создание конвейера обработки данных
– 2 блок. Инструменты разработчика
- Основы Linux
- Установка Linux, работа с графической оболочкой
- Управление пользователями, работа с файлами, процессы
- Сетевые интерфейсы Linux
- Знакомство с Git
- Основы системы контроля версий, инициализация репозитория, синхронизация изменений, фиксация изменений в репозиторий
- Ветвление, Git Flow
- Docker
- Основы Docker, запуск приложений в контейнерах
- + 1 неделя практики по Git, Docker и Linux
- Базы данных и SQL
- Реляционные базы данных, проектирование баз данных
- Язык SQL, транзакции
- Индексы, триггеры, представления, хранимые процедуры
- Работа с базами данных SQL в Go
- Базы данных NoSQL
- Документоориентированные базы данных, отличия от SQL
- Введение в MongoDB и Redis
- + 1 неделя практики работы с базами данных
- Углубленное изучение Go
- Модули, профилирование, отладка
- Тестирование
- Ввод/вывод. Регулярные выражения
- Сетевые приложения
- Веб-приложения
- Выполнение проекта: разработка новостного агрегатора
– 3 блок. Архитектура, DevOps, очереди
- Основы архитектуры
- Архитектурные принципы
- Шаблоны проектирования
- Методы доставки приложений
- Очереди сообщений.
– Итоговый проект
- Разделение монолитного приложения на микросервисы
Цель проекта: освоить процесс разделения или “разбиения” монолитного приложения – ранее разработанного новостного агрегатора – на три микросервиса с их доработкой.
Результаты проекта для студентов:
- Разработка трех микросервисов: новостной агрегатор, API Gateway и сервис модерации комментариев
- Практическое сравнение монолитной и микросервисной архитектуры
- Расширение GitHub-портфолио полноценным проектом.
Эксперты курса:
- Илья Ибрагимов
Backend Golang Developer в Simplinic.
Опыт в программировании более 6 лет.
Ещё работал в: IQ Option, Noveo, 101 Media, Поинт-it. - Валентин Матвейчик
Разработчик на Go в SoftSwiss
Опыт в программировании более 7 лет.
Последние несколько лет писал бэкенд для криптобиржи и другие приложения на основе блокчейна, а также бэкенд для спортсбука. - Максим Пикалов
Go freelancer, Backend разработка
Преподавательский стаж более двух лет.
И др.
Курс «Golang-разработчик от Центр компьютерного обучения «Специалист» при МГТУ им.Н.Э.Баумана»
Цена: 119 890 руб. – 173 290 руб.
Ссылка на сайт: https://www.specialist.ru/track/dp-golang
- Длительность: 400+ часов
- Документ об окончании: Диплом.
Golang (Go) – популярный язык программирования, созданный компанией Google в 2009 году. Он пользуется спросом у всех категорий разработчиков, начиная от новичков и заканчивая опытными специалистами. Go уже вытесняет PHP, Ruby и Python благодаря своей эффективности и понятному синтаксису. На базе Golang создаются сложные веб-сервисы и облачные решения. Например, Docker, Project Mobi и система кластеризации Kubernetes уже используют Go.
Будут ли знания, полученные в дипломной программе, полезны для трудоустройства?
Да. Кроме самого языка Go, вы получите знания и навыки в других инструментах, языках и областях, которые сделают вас востребованным среди работодателей:
- HTML – язык гипертекстовой разметки, который описывает структуру текста и его отображение на экране с помощью тегов и элементов.
- CSS – каскадные таблицы стилей, используемые для оформления веб-страниц с помощью задания цветов, шрифтов и других стилевых элементов.
- Операционная система Linux, включая установку, настройку и администрирование.
- Git – распределенная система управления версиями (VCS).
- Важные темы современной веб-разработки, такие как CRUD, моделирование данных, ресурсы и тестирование сценариев.
- Python – мощный высокоуровневый язык программирования, идеально подходящий для разработки самостоятельных программ и сценариев.
- Разработка серверных приложений на PostgreSQL.
Обучение основано на практике, включая практические задания в каждом модуле и итоговые проекты. В программе также предусмотрены домашние задания и контрольные тесты для проверки знаний. По окончании программы у вас будет портфолио, практические навыки и диплом.
Программа предназначена как для новичков в программировании, которые хотят начать новую профессию, так и для программистов, уже обладающих базовыми, но несистематизированными знаниями.
В состав программы входят следующие курсы:
- “Основы программирования на языке Python”. Уровень 1. Базовый уровень.
- “HTML и CSS”. Уровень 1. Создание веб-сайтов с использованием HTML 5 и CSS 3.
- “Основы администрирования систем Debian, Ubuntu, CentOS”. Уровень 1.
- “Система управления версиями Git”.
- “Основы программирования на языке Go”. Уровень 1. Базовый уровень.
- “Проектирование REST API на языке Go”. Уровень 2.
- “Разработка веб-приложений на языке Go”. Уровень 3.
- “Разработка серверной части приложений на PostgreSQL 12”. Базовый уровень.
Курс «Golang-разработчик от Nordic IT School»
Цена: 78 100 руб.
Ссылка на сайт: https://inordic.ru/courses/golang
На курсе по разработке на языке Golang вы узнаете:
- Основы языка и разработки сервисов с использованием Go.
- Научитесь создавать веб-сайты и ботов на Golang.
- Управлять компьютерами и серверами с помощью Golang.
- Познакомитесь с операционной системой Linux и базой данных PostgreSQL.
По окончании курса вы сможете программировать распределенные системы с поддержкой многопоточности для высоконагруженных проектов.
Курс рассчитан как на новичков, так и на опытных специалистов.
Разработка на языке Golang будет интересна программистам, желающим познакомиться с микросервисной архитектурой, многопоточностью и научиться создавать высоконагруженные приложения.
Для новичков язык Go будет привлекателен благодаря своему низкому порогу входа: простому синтаксису и возможности использовать его в качестве первого языка программирования.
Голанг-разработчики востребованы на рынке из-за своей редкости и новизны. Их зарплаты, кстати, выше, чем у других разработчиков.
На курсе по разработке на языке Golang вы изучите:
- Основы языка и разработку сервисов с использованием Go.
- Научитесь создавать веб-сайты и ботов на языке Golang.
- Управление компьютерами и серверами с помощью Golang.
- Познакомитесь с Linux и PostgreSQL.
Программа курса включает:
- Введение в язык Golang.
- Основные понятия.
- Основы настройки серверов Linux.
- Работа с командной строкой.
- Объявление типов.
- Структуры.
- Методы.
- Введение в интерфейсы.
- Полиморфизм.
- Параллельное программирование.
- Применение Golang для веб-разработки.
- Создание Telegram-ботов.
- Работа с базами данных.
- Коллективная разработка.
- Основы использования системы контроля версий Git.
- Использование GitHub.
- Автоматическое тестирование.
Преподаватель – Житков Тимофей
Senior Fullstack разработчик в Московской Бирже и Team Lead в Nordic IT School.
Курс «Профессия Go-разработчик от АНО ДПО «ШАД»»
Цена: 76 000 ₽ – 156 000 ₽
Ссылка на сайт: https://practicum.yandex.ru/promo/go-profession
При поддержке опытного ментора вы освоите программирование на языке Golang. Курсы предназначены для опытных разработчиков.
Go-разработчик занимается созданием высоконагруженных сервисов в различных областях, таких как онлайн-ретейл, доставка, финтех и интернет вещей. Язык программирования Go идеально подходит для этой цели, так как он нативно поддерживает многопоточность, имеет высокую скорость компиляции и исполнения.
В данной профессии представлены три курса: “Основы Go”, “Go-разработчик до уровня junior+” и “Go-разработчик до уровня middle”. В зависимости от вашего опыта и целей, вы можете выбрать наиболее подходящий курс. Следует отметить, что эти курсы не предназначены для лиц без опыта в разработке.
После основной программы у вас будет возможность выполнить выпускной проект для вашего портфолио. Вы можете работать самостоятельно или присоединиться к команде, реализовать собственную идею или выбрать один из предложенных вариантов.
Вы будете иметь ментора, опытного старшего Go-разработчика, который будет помогать вам в поиске ответов на вопросы, проверять ваш код и проводить вебинары для обсуждения задач. Кроме того, каждые две недели вы будете встречаться один на один с ментором, чтобы обсудить ваш прогресс в обучении и разработке проекта.
Список курсов:
- “Основы Go”
Длительность: 1 месяц
На этом курсе вы получите представление о Go и его экосистеме, изучите синтаксис и будете готовы для основных программ, представленных в профессии. На этом курсе не предусмотрено сопровождение, вы можете начать обучение в любое время. - “Go-разработчик”
Длительность: 3 месяца
На этом курсе вы усовершенствуете навыки, необходимые каждому Go-разработчику. По окончании вы сможете самостоятельно выполнять задачи на уровне junior+ в области Go-разработки. Вам будет оказывать поддержка ментора и куратора. - “Продвинутый Go-разработчик”
Длительность: 6 месяцев
На этом курсе вы продвинетесь ещё дальше, изучив архитектурные паттерны и более глубоко познакомившись с возможностями Go. Вы получите навыки и знания, необходимые для выполнения задач на уровне middle-разработчика Go. Вашими сопровождающими на курсе будут ментор и куратор.
Менторы:
- Георгий Зуйков, техлид
Старший разработчик в «Едадиле». Программирует 10 лет, из них последние 5 — на Go. Разрабатывает архитектуру высоконагруженных систем. Входит в Go-комитет Яндекса. - Александр Демиденко, техлид
Старший разработчик в Яндекс.Облаке, в команде Cloudgate. Строит масштабируемую систему доставки трафика. Имеет многолетний опыт работы в телекоме (VoIP). - Дмитрий Шеламов, ментор
Старший разработчик в SoftSwiss. Начал преподавать Go, ещё будучи мидлом. Интересный факт: в 16 лет выпустил игру под Android с 10 000 установок.
И др.
Курс «Программирование на golang learn go от Be Geek»
Бесплатный курс Go (Golang)
Ссылка на сайт: https://www.youtube.com/playlist?list=PLQuaNOtBP3TpjiROGjy3-hEr5xL0fN9bX
Видеоуроки:
- Основы типов и переменных в Golang.
- Работа с переменными и обработка ошибок в Golang.
- Циклы в языке программирования Go.
- Массивы и срезы в Golang.
- Работа с картами (Maps) в Golang.
- Функции в Golang.
- Работа со структурами в Golang.
- Организация кода в Golang.
- Рекомендации по книгам для изучения Golang.
- Использование библиотеки Sort в Golang.
- Создание парсера для Telegram на Golang.
- Создание Telegram-бота с использованием Webhook в Golang.
- Сбор данных пользователей с Telegram-ботом на Golang.
- Фильтрация сообщений для Telegram на Golang.
- Отправка фотографий из облачного хранилища с Telegram-ботом на Golang.
- Работа с Docker в Golang. Упаковка приложения на Go в контейнер Docker.
- Использование переменных окружения в Golang.
- Поиск заказов на фрилансе с использованием Golang, HTTP, Telegram и API.
- Написание экспортера Mysql для Prometheus на Golang.
- Ошибки, с которыми сталкиваются новички в Golang (часть 2).
- Создание простой веб-формы аутентификации (Golang, шаблоны, веб).
- Создание интерактивного интерфейса командной строки на Golang.
- Использование модуля md5. Сравнение файлов на Golang с помощью md5sum.
- Query vs Exec vs Prepare: функции для работы с базой данных в Golang.
Преимущества:
- Бесплатный курс
- 24 урока
Недостатки курса:
- Нет обратной связи
- Мало практики
Курс «Программирование на Golang от Stepik»
Бесплатно
Ссылка на сайт: https://stepik.org/course/54403/promo?amp&
Данный курс представляет собой введение в основы языка программирования Golang. Он предназначен для тех, кто уже обладает базовым опытом в программировании. В рамках курса будут рассмотрены теоретические аспекты, которые будут подкреплены практическими заданиями и упражнениями.
- нагрузку вы ставите самостоятельно
- Сертификат.
Данный курс рекомендуется тем, кто уже обладает базовыми навыками программирования. Он не требует специальных знаний в области информатики, однако желательно иметь представление о базовых концепциях хотя бы одного языка программирования и уметь комфортно работать с компьютером.
Преподаватели:
- Семён Новиков
Golang developer and teacher (Stepik and JetBrains Academy)
Golang разработчик и начинающий преподаватель, на stepik чтобы получить новые знания и поделиться своими 😉 Создатель курса по Go на stepik. - Александр Ципорин
- Валентин Казанцев
18 y.o Developer
Shopify Fullstack Developer, участвовал в разработке SpeedBoostr, как со стороны сервера, так и со стороны клиента. В данный момент независимый разработчик в поисках вкусных предложений 🙂
И др.
Курс включает:
30 уроков, 63 теста, 86 интерактивных задач
Модуль 1: Основы
- Вступление
- Знакомство с Go
- Создание первой программы
- Типы данных
- Переменные и арифметические операции, ввод/вывод данных
- Комментарии
- Константы
- Условные выражения
- Условные конструкции
- Циклы
- Форматированный вывод
- Массивы и срезы
- Решение задач
Модуль 2: Функции, структуры, указатели и другое
- Функции
- Пакеты
- Указатели
- Структуры
- Строки
- Обработка ошибок
- Решение задач
Модуль 3: Map, файлы, интерфейсы, многопоточность и многое другое
- Отображения (map)
- Преобразование типов данных
- Анонимные функции
- Интерфейсы
- Работа с файлами
- JSON
- Работа с датой и временем
- Параллелизм
- Заключение.
Отзывы о курсе Golang (Go):
Вячеслав Трофимов
«Возникали некоторые трудности, но курс отличный для новичков!»
Дмитрий Бойко
«быстро и по делу».
Курс «Golang от ITVDN»
Стоимость курса Go: 14.99 USD
Ссылка на сайт: https://itvdn.com/ru/video/golang
- Длительность: 5 ч 51 м
- Уроков: 8.
Go (Golang) – язык программирования, разработанный компанией Google, который компилируется в исполняемый код. Он отличается простотой, понятным кодом, строгой типизацией, обширной стандартной библиотекой и высокой производительностью.
Цель этого курса – научить новичков основам языка Go. По завершению курса вы будете знать основные понятия и конструкции языка, сможете писать код на Go и использовать инструментарий, описанный в курсе.
Что вы изучите:
- Создание простых приложений на Go
- Работу со стандартными библиотеками и утилитами Go
- Применение методов и функций
- Работу с массивами, срезами, словарями и оператором range
- Написание многопоточных приложений
- Тестирование кода и измерение производительности функций.
Видеоуроки:
- Введение. Основные понятия языка, стиль кодирования, пакеты и типы.
- Первая программа. Утилиты Go.
- Массивы, срезы, словари, оператор range.
- Структуры и интерфейсы. Интерфейсные типы данных.
- Многопоточность. Горутины, каналы, оператор select.
- Пакеты. GoDoc.
- Ввод-вывод, пакет bytes, буферы.
- Тестирование. Измерение производительности функций.
Отзывы о курсе доступны на сайте.
Курс «GO-разработчик от ООО «ФРОО»»
Цена: 45 000 р.
Ссылка на сайт: https://golangcourse.ru/
Пиши производительные веб-сервисы с простым кодом за пару дней. Освой профессию на уровне middle-специалиста.
Курс будет полезен программистам, работающим с PHP, Python, C/C++, JavaScript и Ruby.
В связи с ограниченным количеством мест на курсе, мы можем обеспечить качественную коммуникацию между преподавателем и слушателями.
Финальные проекты – ведущие компании индустрии подготовили финальные проекты. Успешное выполнение этих проектов поможет вам улучшить ваше резюме и увеличит ваши шансы на получение предложений о собеседованиях после окончания обучения.
Студенты, успешно выполнившие задания на курсе, получат возможность пройти собеседования в компаниях.
Во время обучения вы:
- Освоите основы языка и разработки веб-сервисов с использованием Go.
- Запустите собственное веб-приложение.
- Познакомитесь с типичными проблемами, с которыми сталкиваются разработчики веб-сервисов, и научитесь их решать.
- Повысите свои навыки в веб-программировании и обогатите свое резюме.
Программа курса:
– 1 неделя. Основы языка Golang
В этом модуле вы познакомитесь с основами языка:
- Переменные и базовые типы данных
- Составные типы данных
- Управляющие конструкции
- Основы функций
- Функции как объекты первого класса, анонимные функции
- Отложенное выполнение и обработка паники
- Работа со структурами
- Методы структур
- Пакеты и область видимости
- Работа с интерфейсами
- Пустой интерфейс
- Композиция интерфейсов
- Написание программы для уникализации
- Написание тестов для программы уникализации
– 2 неделя. Асинхронное программирование
В этом модуле вы освоите ключевую особенность языка – асинхронное программирование, которое делает Go таким мощным инструментом.
- Обработка запросов и преимущества неблокирующего подхода
- Горутины – легковесные процессы
- Каналы – передача данных между горутинами
- Мультиплексирование каналов с помощью оператора select
- Таймеры и таймауты
- Пакет context и отмена выполнения
- Асинхронный прием данных
- Пул воркеров
- Waitgroup – ожидание завершения работы
- Ограничение ресурсов
- Ситуация гонки на примере конкурентной записи в map
- Mutex для синхронизации данных
- Атомарные операции
– 3 неделя. Работа с динамическими данными и оптимизация производительности
В этом модуле вы научитесь работать с динамическими данными и улучшать производительность.
- Разбор JSON-данных
- Нюансы работы с JSON
- Пакет reflect – работа с динамическими данными во время выполнения
- Генерация кода – программа, которая создает программу
- Бенчмаркинг в Go
- Профилирование с помощью pprof
- Пулы объектов
- Покрытие кода тестами
- Работа с XML
– 4 неделя. Основы протокола HTTP
На этой неделе вы научитесь запускать веб-сервер, обрабатывать запросы и получать данные. Кроме того, вы изучите сбор метрик производительности с работающего сервера.
- Прослушивание TCP-сокета с использованием пакета net
- Обработка HTTP-запросов
- Работа с параметрами запросов
- Обслуживание статических данных
- Загрузка файлов из формы
- HTTP-запросы к внешним сервисам
- Тестирование HTTP-запросов и ответов
- Inline-шаблоны и шаблоны из файлов
- Вызов методов и функций из шаблонов
- Профилирование с использованием pprof
- Отслеживание утечек горутин
- Трассировка поведения сервиса
- Пример с Telegram-ботом
– 5 неделя. Анатомия веб-сервиса
На этой неделе вы познакомитесь с основными компонентами при разработке веб-сервисов, такими как роутеры, веб-серверы, фреймворки и утилиты.
- Основные компоненты веб-сервиса
- Основы использования middleware для HTTP
- Контекстные значения
- Обработка ошибок
- Роутеры – gorilla/mux, httprouter
- Производительный веб-сервер fasthttp
- Парсинг параметров в структуру и их валидация
- Фреймворк Beego
- Фреймворк Gin
- Стандартные пакеты log, zap, logrus
- gorilla/websocket
- Компилируемые шаблоны
- Утилита dep
– 6 неделя. Работа с базами данных
На этой неделе вы научитесь работать с базами данных, основной функцией веб-сервера, и извлекать/загружать данные.
- Использование database/sql и MySQL
- Применение GORM и рефлексии для работы с SQL
- Защита от SQL-инъекций
- Пример работы с кешированием с помощью Memcached
- Работа с Redis
- Очереди сообщений с использованием RabbitMQ
- Работа с документоориентированной базой данных MongoDB
– 7 неделя. Микросервисы
На этой неделе вы познакомитесь с популярным паттерном микросервисов и изучите фреймворк gRPC.
- Определение микросервисов, их преимущества и недостатки
- Микросервисы в рамках монолита
- Использование пакета net/rpc и формата gob
- Использование net/http/jsonrpc
- Протокол сериализации protobuf
- Создание сервиса с использованием gRPC
- Продвинутые возможности работы с gRPC
- Стриминг сообщений
- Балансировка нагрузки и использование Consul
- Использование grpc-gateway для доступа к gRPC-сервисам через HTTP
- Генерация клиента и сервера из документации с помощью Swagger
– 8 неделя. Работа сервиса в производстве
На этой неделе вы узнаете, как настраивать и мониторить сервисы, а также интегрировать код на C в Go.
- Локальная конфигурация с использованием флагов, JSON и ldflags
- Удаленная конфигурация с использованием Consul
- Значение мониторинга и его компоненты
- Отправка таймингов во внешнюю систему
- Использование пакета Unsafe
- Интеграция кода на C с помощью cgo
- Использование инструментов go vet и gometalinter
– 9 неделя. Мок-тесты, JWT и CSRF-токены
- Архитектура приложения и паттерн репозитория
- Тестирование репозиториев и баз данных с помощью Sqlmock и gomock
- Хеширование паролей
- CSRF-токены на основе хэшей, шифрования и JWT
- Работа со сессиями: stateful и stateless, особенности сессий на основе JWT
– 10 неделя. Авторизация OAuth и проектирование API
- Реализация авторизации с использованием протокола OAuth
- Горячая перезагрузка кода с помощью инструмента Air
- Встраивание статических файлов с помощью vfsgen
- Проектирование API
– 11 неделя. GraphQL
- Введение в GraphQL: получение данных, мутации, управление сложностью запросов, проблема N+1 запросов, директивы, загрузка файлов
- Внедрение GraphQL в демонстрационный проект
- Организация структуры приложения
– 12 неделя. Контейнеры, S3 и трейсинг
- Использование Docker совместно с Go
- Оптимизация сборки контейнеров Docker, многоэтапная сборка
- Работа с Docker Compose
- Объектное хранилище S3 и использование Minio
- Организация контроля доступа к изображениям с помощью ACL
- Конфигурирование приложения с использованием Viper
- Генерация идентификатора запроса (RequestID) и трейсинг в GraphQL
- Распределенный трейсинг с использованием Jaeger.
Курс «Golang для инженеров от ООО «Слёрм»»
Цена: 45 000 ₽ – 60 000 ₽
Ссылка на сайт: https://slurm.io/go-for-ops
Golang уже считается перспективным языком программирования – он прост в освоении, быстрый, эффективный и останется актуальным на долгое время.
На этом курсе вы научитесь создавать свой сервер API с помощью Golang, запускать контейнеры, взаимодействовать с Docker из Go, работать с пользовательскими операторами и другими полезными возможностями.
Кому будет полезен этот курс:
- Специалистам по DevOps
Вы сможете автоматизировать процесс разработки и улучшить уровень администрирования. Это поможет вам работать более эффективно. - Разработчикам
Научитесь работать с микросервисной архитектурой и высоконагруженными системами. Вы сможете решать больше задач и повысить свою ценность как специалист. - Новичкам в программировании
Вы познакомитесь с основными принципами операционных систем и обмена данными. Научитесь создавать и оптимизировать приложения на языке Go.
Перед началом курса рекомендуется проверить и систематизировать ваши знания Git.
Программа курса:
- Вступление и основы Golang
- Знакомство с курсом
- Организация онлайн-обучения
- Ориентационное собрание
- Выбор методов практики
- Философия Go. Подходящие и неподходящие проекты. Роль Go для инженеров
- Переменные и типы данных. Переменные и константы
- Переменные и типы данных. Простые типы
- Переменные и типы данных. Составные типы
- Функции
- Циклы, оператор switch-case, оператор if
- Практические задания
- Дополнительные материалы
- Онлайн-собрание для начала обучения
Познакомимся с преподавателями, узнаем, как будет проходить курс и определим свои цели. Углубляемся в основы
- Структуры
- Интерфейсы
- Обобщенное программирование и ООП в Go
- Сборщик мусора
- Практические задания
- Дополнительные материалы
- Параллельное выполнение операций
- Концепция многозадачности
- Горутины
- Обработка ошибок
- Каналы
- Средства синхронизации
- Практические задания
- Дополнительные материалы
- Go на практике, часть 1
- Go модули и структура проекта
- Работа с операционной системой
- Работа с файлами и файловой системой
- Работа с сетью в Go
- Обзор протоколов и форматов
- Go на практике, часть 2
- Работа с базами данных
- Пакеты для обработки HTTP-запросов
- Написание тестов
- Проверка качества кода
- Кросс-компиляция и использование build-тегов
- Контрольный список и итоги основного блока
- Вопросы и ответы + неформальная встреча
- Онлайн-встреча с преподавателями, промежуточные итоги, ответы на вопросы.
- Работа с Docker в Go
- Docker SDK для Go
- Взаимодействие с Docker из Go
- Практические рекомендации и советы
- Практическое задание: написание приложения для развертывания контейнера и его тестирования
- Паттерны в Kubernetes
- Health probe / Liveness probe
- Периодические задачи
- Демон-сервисы
- Состояний сервис
- Обнаружение сервисов / Сеть сервисов
- Sidecar / Адаптер
- Контроллер / Оператор
- Операторы в Kubernetes
- Концепция операторов Kubernetes
- Роль операторов
- Компоненты оператора (контроллер, индексатор и API Kubernetes)
- CRD (создание, заполнение переменных, генерация CRD)
- Компоненты контроллера
- Написание собственного контроллера для развертывания
- Написание оператора с использованием kubebuilder
- Сборка проекта для ручного тестирования в кластере
- Обзор ginkgo (написание тестов), обзор основных фреймворков для создания операторов, kubeclient, готового HTTP-сервера
- Написание теста для валидации контроллера
- Развертывание приложения
- Вопросы и ответы + заключительный этап
- Заключительная онлайн-встреча с преподавателями и командой, подведение итогов, ответы на вопросы.
Спикеры курса:
Всеволод Севостьянов
Tech Lead в проекте vene.io
– Более 10 лет опыта разработки на разных языках (php, java, Go)
– Архитектор и разработчик решений для обеспечения очень высокой пропускной способности (до 30 тысяч запросов в секунду на реальных бизнес кейсах)
– Tech Advisor команды DevOps
– Специализируется на облачных решениях
– Спикер на профильных митапах и конференциях.
Тигран Ханагян
Team Lead & Backend Developer в Citymobil
– Более 7 лет опыта разработки на разных языках (python, php, Go)
– Архитектор высоконагруженных сервисов на Go с нуля, один из которых – сервис программы лояльности в city-mobil
– Автор статей в публичных каналах
– Спикер на профильных митапах и конференциях.
Курс «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.
- Работа с целыми числами в языке 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: сериализация и десериализация.
- Редактирование видео на языке Golang.
Курс «Golang-разработчик от CloudMTS»
Бесплатно
Ссылка на сайт: https://www.teta.mts.ru/golang
Освоение языка через решение практических задач и подготовка к интервью. Трехмесячный погружение в разработку на Go.
Занятия проводятся в онлайн-формате. Лекции можно будет просмотреть в записи трансляций. После каждой темы будет предложено практическое домашнее задание, которое будет оценено опытным разработчиком.
Для прохождения курса требуются следующие навыки:
- Знание синтаксиса и основных конструкций языка Go.
- Умение писать простые SQL-запросы.
- Понимание основ работы с базами данных и системами обмена сообщениями.
- Опыт коммерческой разработки продолжительностью не менее полугода.
Программа:
- Архитектура, паттерны проектирования и инструменты разработки
- Применение принципов SOLID в языке Go
- Сравнение монолитной архитектуры и микросервисов
- Взаимодействие через REST и gRPC
- Паттерны Two-phase commit и Saga
- Асинхронное взаимодействие
- Использование Docker и K8s в разработке
- Настройка CI/CD. Использование линтеров кода, проверок безопасности и подключение тестов
- Основы Go
- Работа с срезами (Slice) и отображениями (Map)
- Использование горутин (Goroutines)
- Взаимодействие через каналы (Channels)
- Работа с контекстом (Context)
- Использование интерфейсов (Interfaces)
- И другие основные концепции
- Конкурентность в Go
- Примитивы синхронизации
- Использование горутин и каналов
- Паттерны конкурентности
- Планировщик выполнения
- Управление памятью и сборка мусора
- Поиск утечек горутин
- Документация и тестирование
- Использование OpenAPI Swagger (Swaggo)
- Написание юнит-тестов
- Использование мок-объектов (Mock)
- Интеграционное тестирование (с использованием контейнеров)
- Тестирование конкурентного кода
- Работа с базами данных: PostgreSQL
- Проектирование баз данных. Запросы и модификация данных
- Транзакции. Триггеры и хранимые процедуры
- Оптимизация запросов и профилирование
- Репликация. Полнотекстовый поиск. Работа с JSON
- Работа с базами данных: MongoDB
- Принципы CAP/PACELC
- Создание запросов
- Индексирование данных
- Настройка и конфигурирование
- Работа с геоданными в MongoDB
- Обработка очередей данных
- Основные концепции и архитектура Apache Kafka
- Работа с топиками, партициями и смещениями в Apache Kafka
- Использование API для производителя и потребителя
- Command Sourcing
- Event Sourcing
- Новые возможности в Go
- Использование дженериков.
Преподаватели:
- Сергей Парамошкин
Технический менеджер Яндекс.Поиск
Работал в эксплуатации, аналитиком, архитектором, руководителем.
Больше 10 лет опыта в IT, опыт в разработке на Go 7 лет. - Роман Цованян
Старший Архитектор автоматизации бизнес-процессов МТС
Более 30 лет опыта в IT, опыт в разработке на Go 6 лет. - Максим Сёмочкин
Руководитель направления в отделе автоматизации бизнес-процессов МТС
Прошёл путь от DevOps инженера до ведущего архитектора.
Опыт в разработке на Go 6 лет.
О прошлом курсе:
Виталий Попов
Golang-разработчик в CloudMTS
«От курса по языку программирования я ждал не только введения в основы языка, но и плотной работы с экосистемой и инструментами, использования подходов к разработке, максимально приближенных к реальной работе. И на курсе от МТС я получил нечто похожее: сквозной проект на курсе – почти боевое приложение. Преподаватели и менторы рассказывали, как применять современные подходы к разработке на Golang. При этом на курсе дается информация небольшими порциями, успеваешь всё изучить и закрепить на практике.
Очень хороший курс, рекомендую!»
Герман Лепин
Golang-разработчик в CloudMTS
«Обучение на курсе MTS Teta позволило мне накопить большой объем знаний, которым я сейчас активно пользуюсь в своих рабочих задачах.
Курс наполнен качественными теоретическими материалами и практическими заданиями. Помимо развития технических скилов, также прорабатываются навыки работы в команде, умение договариваться и разделять ответственность. Если качественно изучать материал и ответственно подходить к выполнению задания по курсу, то за три месяца можно добиться отличного результата и устроиться на работу в MTS Cloud.
Всем, кто принимал участие в создании и ведении курса, выражаю огромную благодарность за их титанический труд!»
Курс «Golang от ITEA»
Цена: 280 EUR
Ссылка на сайт: https://onlineitea.com/course/go-course/
Пройдите обучение по языку программирования Golang с самого начала, чтобы понять основы одного из ведущих языков программирования в 2021 году. Изучите его идиомы и научитесь избегать типичных ошибок, характерных для IT-специалистов. Образовательная программа нашей академии предоставит вам полное погружение в разработку на Go, позволяя решать практические задачи и развивать навыки в этом языке и технологическом стеке.
- 12 занятий / 2 месяца.
Для кого предназначен этот курс:
- Если вы ищете свое предназначение и хотите освоить высокооплачиваемую профессию разработчика, в которой можно быстро расти и развиваться.
- Если у вас есть опыт работы в IT-сфере, но вы продолжаете развивать свои навыки и расширять свое персональное портфолио.
- Если вы мечтаете изменить свою карьерную направленность и начать заниматься делом, которое приносит удовольствие и обеспечивает стабильный доход.
Обучение программированию проводится онлайн. Если у вас возникнут вопросы, затруднения с материалом или нужна помощь с домашними заданиями, коуч обязательно поможет и объяснит сложные темы. Ментор консультирует студентов по вопросам разработки как во время, так и после занятий. После завершения обучения вам потребуется выполнить курсовой проект, чтобы продемонстрировать ваш уровень знаний. Вы сможете добавить его в ваше персональное портфолио.
В рамках этого курса вы научитесь:
- Создавать консольные и сервисные приложения.
- Разрабатывать консольное программное обеспечение на языке Go, под разные операционные системы и различные архитектуры.
План обучения:
- Введение
- Определение языка Go
- История развития
- Преимущества Go по сравнению с другими языками
- Типичные задачи, которые можно эффективно решать с помощью Go
- Актуальность языка Go
- Основы Git
- Настройка среды разработки на Go
- Установка Go
- Установка дополнительных инструментов для эффективной работы с Go
- Обзор основных утилит для работы с Go
- Быстрая настройка среды разработки на примере Visual Studio Code
- Написание первой программы
- Создание простого веб-сервера на Go за 1 минуту
- Основы языка
- Типы данных
- Переменные
- Константы
- Указатели
- Пакеты и импорт
- Область видимости
- Основные операции
- Логические операции
- Арифметические операции
- Побитовые операции
- Инкремент и декремент
- Управление ходом программы
- Условные операторы if
- Циклы for
- Оператор switch
- Составные типы данных
- Массивы
- Срезы (Slice)
- Ассоциативные массивы (Map)
- Структуры (Struct)
- Итерация по коллекциям с помощью Range
- Функции в Go
- Основные понятия функций
- Определение и использование функций
- Передача параметров в функции
- Возвращение множества значений из функции
- Функции с переменным числом параметров
- Рекурсия
- Работа с файлами
- Обработка ошибок в Go
- Возврат ошибок из функций
- Отложенное выполнение функций (defer)
- Использование panic и recover
- Дополнительные возможности языка Go
- Методы в Go
- Интерфейсы в Go как способ реализации полиморфизма
- Рефлексия
- Пакеты
- Низкоуровневое программирование
- Параллелизм в Go
- Горутины (Goroutines) и каналы (Channels)
- Синхронизация доступа к разделяемым переменным с помощью мьютексов
- Обзор стандартной библиотеки языка Go
По окончании курса по Golang у вас будет:
- Сертификат, подтверждающий успешное завершение обучения в соответствии с уровнем успеваемости.
- Годовой доступ к материалам и записям занятий в вашем личном кабинете на удобной платформе.
- Возможность присоединиться к сообществу ITEA.
- Портфолио с проектами и выполненными работами.
- Поддержка в трудоустройстве.
- Ценный опыт работы с профессиональными инструментами.
Отзывы студентов:
Максим Левин
«Рекомендую академию! Высокий уровень подготовки выпускников, которые могут занять лидирующие позиции на рынке труда Украины. Нескольких ребят удалось трудоустроить в продуктовую компанию».
Игорь Кубицкий
«Проходил несколько курсов в ITEA Львов. Хорошая организация курсов и подбор учителей. Хорошо объясняют материал. В ITEA приветливый коллектив и дружеская атмосфера. Рекомендую их обучающие курсы!»
Курс «Продвинутая разработка микросервисов на Go от Ozon Tech»
Бесплатно
Ссылка на сайт: https://route256.ozon.ru/go-developer
- Два месяца теории и практики
- Менторство от экспертов и тьюторов.
Твой путь в захватывающий мир электронной коммерции:
- Первый модуль
Изучение языка Go и принципов проектирования приложений. Создание собственного бота для мессенджера, использующего gRPC для управления и базу данных для хранения информации. Реализация асинхронных обработчиков с применением паттернов проектирования и написание юнит-тестов. - Второй модуль
Создание распределенных приложений, обеспечение наблюдаемости, применение SRE-подхода, работа с очередями, обработка больших данных, управление высокой нагрузкой, машинное обучение и опыт разработчиков в компании Ozon.
А что еще?
- Изучение синтаксиса Go и разработка программного обеспечения
- Асинхронное программирование и использование gRPC
- Работа с базой данных Postgres и понимание ее внутреннего устройства
- Использование очередей сообщений и применение паттернов проектирования для разработки сложных систем
- Обеспечение наблюдаемости приложений и применение подхода SRE
- Шардирование и кэширование данных
- Работа с файловым хранилищем и специальными типами баз данных
- Применение машинного обучения в условиях высокой нагрузки.
Эксперты и тьюторы:
- Кирилл Шматов
Старший разработчик в команде «Платформа коммуникаций» - Леонид Могучев
Разработчик в команде «Тарификации» - Евгений Гуров
Руководитель отдела «Билетные витрины, Маркетинг и SEO» - Вадим Дмитриев
Тимлид команды «ЖД»
И др.
Приглашенный эксперт – Алексей Шаграев
IT-предприниматель.
По окончании курса ты сможешь:
- Разрабатывать программное обеспечение на языке Go
- Создавать код, который является надежным и легко поддерживаемым
- Проектировать сложные распределенные системы
- Обеспечивать мониторинг и поддержку систем, которые вы разработали
- Работать в самой динамично развивающейся отрасли
- Освоить принципы работы системы лифтов в «Москва-Сити»
- Представить три репозитория на GitHub с вашими разработками, выполненными во время курса.
Курс «Go программирование от Академия IT»
Бесплатно
Ссылка на сайт: https://academiait.ru/course/izuchaem-go-programmirovanie-na-golang-learn-go/
Видеоуроки:
- Типы данных и переменные в языке программирования Go.
- Работа с переменными и обработка ошибок.
- Циклы в Go: основы и примеры.
- Массивы и срезы в языке программирования Go.
- Использование карт (Maps) в Go.
- Функции в языке программирования Go: основы и применение.
- Работа со структурами (Structures) в Go.
- Организация кода в языке программирования Go.
- Рекомендации по чтению книг по Go.
- Использование библиотеки Sort в Go.
- Создание парсера для Telegram на языке Go.
- Разработка Telegram-бота на Go с использованием webhook.
- Сбор данных пользователей в Telegram-боте на языке Golang.
- Фильтрация сообщений для Telegram на языке Go.
- Отправка фотографий из облачного хранилища в Telegram-боте на Go.
- Поиск фриланс-заказов на Go: использование Go HTTP, Telegram API и других API.
- Работа с Docker в Go: упаковка приложения Go в контейнер Docker.
- Написание экспортера для Mysql и Prometheus на языке программирования Go.
- Ошибки, с которыми сталкиваются новички в Go: примеры и рекомендации.
- Создание простой веб-формы для авторизации (golang, templates, шаблоны, web).
Курс «Golang-разработчик. Advanced от Rebrain»
Цена: 35 000 руб.
Ссылка на сайт: https://rebrainme.com/golang-advanced/
- 90% практики
- 25+ заданий.
Кому будет полезен практикум:
- Программисты
- Специалисты в области тестирования
- Системные архитекторы и аналитики
- Инженеры DevOps
Программа обучения включает следующие модули:
- Работа с базами данных
- Настройка подключения к базе данных (PostgreSQL)
- Работа с базой данных (PostgreSQL)
- Миграции данных (Goose)
- Использование GORM для работы с базой данных
- Работа с NoSQL (MongoDB)
- Создание сервера на Go (обработка запросов, контекст, промежуточное ПО)
- Запуск сервера, маршрутизация, первый обработчик
- Работа с параметрами запроса
- Использование роутера Gorilla
- Использование роутера Chi
- Применение промежуточного ПО (Middleware)
- Работа с контекстом запроса
- Использование fasthttp
- Работа с WebSockets
- Низкоуровневое программирование и продвинутая сборка
- Продвинутая работа с модулями
- Сборка приложения с использованием Idflags
- Создание сборок для разных операционных систем
- Использование пакета unsafe
- Взаимодействие с C через Cgo
- Микросервисная архитектура
- Создание образа для нашего сервиса
- Продвинутая сборка образа
- Получение конфигураций из key-value хранилища (Consul)
- Взаимодействие между сервисами
- Синхронное взаимодействие через REST
- Взаимодействие с помощью gRPC
- Использование Interceptors
- Асинхронное взаимодействие (Kafka) и публикация-подписка
- Работа с GraphQL в Go
- Оптимизация
- Хранение данных в памяти
- Использование Redis
- Создание собственного LRU-кэша
- Работа сервиса в кластере
- Форматирование и уровни логирования
- Запись логов (Greylog)
- Распределенное логирование
- Сбор и визуализация метрик (Prometheus + Grafana)
- Graceful обработка сигналов
- Проверка состояния сервиса (healthcheck)
По завершению практикума вы будете получать электронный сертификат с вашим именем, который подтверждает вашу успешность в выполнении всех заданий. Кроме того, вы получите карту Hard Skills. Эта карта компетенций отражает ваши достижения в выполнении заданий и освоении технологического стека.
Hard Skills Card – ваша техническая карточка специалиста.
Отзыв участника:
Юрий Медведев, 28 лет
До практикума: Digital Marketing
После практикума: Junior DevOps
«До практикума я работал в сфере Digital Marketing – удаленно занимался рекламой, маркетингом. Ранее работал инженером связи, от механика и до ведущего инженера, поэтому IT мне близко, и я всегда хотел развиваться в этом направлении и вернуться в профессию. Потому заинтересовался открытым практикумом по DevOps, который предложила мне таргетная реклама. После него желание изучать DevOps усилилось – привлекли перспективы и сложная, но интересная работа. Так я решил пойти дальше на практикум. И уже в середине него устроился в аутсорсинговую компанию по администрированию инфраструктуры и дорос до Junior DevOps.
Сам практикум – бомба! Намного круче классического формата с лекциями. Когда есть лекции, ты привязан к группе, ко времени. Здесь же отстать невозможно: включайся, когда удобно, и получай на любом этапе быструю обратную связь по всем заданиям. Выходит, как формат индивидуального обучения, но только еще и с возможностью постоянно находиться в сообществе – общаться, развивать кругозор.
После практикума меня позвали в команду REBRAIN как одного из лучших выпускников. И это тоже очень крутой опыт. Сейчас я курирую практикум – отвечаю на вопросы ребят, вместе разбираем задачи, что помогает укреплять знания и разбираться в нюансах.
Сам формат практикума с упором именно на выполнение заданий – именно то, что нужно, чтобы сформировать достаточный кругозор и базис для развития. Так что, если тема DevOps или развития Operations вам близка – практикум это именно то, что нужно!»
Курс «Go от Microsoft »
Бесплатно
Ссылка на сайт: https://docs.microsoft.com/ru-ru/learn/paths/go-first-steps/
“Хотите изучать язык программирования, но не знаете, с чего начать? Начните отсюда! Узнайте о базовом синтаксисе и направлении мыслей для создания простых программ с помощью Go.”
Содержание этой учебной программы включает:
- Установка необходимых инструментов для написания кода на языке Go.
- Использование потоков управления в Go.
- Работа с типами данных в Go.
- Обработка ошибок.
- Использование методов и интерфейсов.
- Параллелизм в Go.
- Написание и тестирование программы.
Предварительные требования: базовое знание программирования; ознакомление хотя бы с одним языком программирования.
Модули, включенные в эту учебную программу:
- Введение в язык Go
В этом модуле вы познакомитесь с основами использования Go. - Работа с пакетами, переменными и функциями в Go
Изучите основные типы данных в Go, объявление переменных, написание функций и использование пакетов. - Управление потоком выполнения в Go
Изучите принципы управления потоком выполнения в Go. - Работа с типами данных, структурами, массивами, срезами и картами в Go
Узнайте о структурах, массивах, срезах и картах в Go, их различиях и использовании. - Обработка ошибок и ведение журнала в Go
Изучите методы обработки ошибок и ведения журнала в программировании на Go. - Использование методов и интерфейсов в Go
Познакомьтесь с использованием методов и интерфейсов в языке программирования Go. - Параллельное выполнение в Go
Узнайте больше о параллельном выполнении, одной из ключевых особенностей Go. - Написание и тестирование программы на Go
Создайте и протестируйте полноценную программу, применяя полученные знания о Go.
Курс «Введение в программирование на Go от Caleb Doxsey»
Бесплатно
Ссылка на сайт: http://golang-book.ru/
Содержание:
- Начало работы
- Ваш первый код
- Типы данных
- Переменные
- Управление выполнением
- Массивы, срезы, словари
- Функции
- Указатели
- Структуры и интерфейсы
- Параллельное выполнение
- Пакеты и повторное использование кода
- Тестирование
- Стандартная библиотека
- Дальнейшие шаги.
Курс «Golang от Miralabs»
Цена: 23 700 RUB
Ссылка на сайт: https://iteacorp.com/course/golang/
- Длительность – 36 ч.
По окончании курса вы сможете:
- Разрабатывать консольные программы на языке Go, под различные операционные системы и архитектуры.
- Создавать консольно-сервисные приложения.
Занятия проводятся в формате онлайн-взаимодействия, где студенты имеют возможность напрямую общаться с тренером. Как и в офлайн-формате, студенты могут задавать вопросы тренеру и мгновенно получать обратную связь. Таким образом, онлайн-занятия почти неотличимы от традиционных лекций, при этом вы можете учиться в комфортной обстановке, будь то дом, кафе или коворкинг.
План обучения на данном курсе выглядит следующим образом:
- Введение
- Знакомство с языком Go
- История развития языка
- Преимущества Go по сравнению с другими языками программирования
- Области применения и эффективность Go
- Современные тенденции в развитии языка Go
- Основы Git
- Введение в систему контроля версий Git
- Настройка рабочей среды Go
- Установка компилятора Go
- Установка дополнительных инструментов для эффективной работы с Go
- Основные утилиты для работы с Go
- Быстрая настройка рабочей среды на примере Visual Studio Code
- Создание и запуск первой программы
- Простой веб-сервер на Go за 1 минуту
- Основы языка
- Типы данных в Go
- Объявление и использование переменных
- Константы
- Указатели
- Пакеты и импорт
- Область видимости переменных
- Основные операции
- Логические операции
- Арифметические операции
- Поразрядные операции
- Инкремент и декремент
- Управление ходом программы (Control flow)
- Условный оператор if
- Циклы for
- Оператор switch
- Составные типы данных
- Массивы
- Срезы (Slice)
- Тип map
- Структуры
- Итерация с помощью цикла Range
- Функции в Go
- Основные понятия о функциях
- Определение функций
- Передача параметров в функцию
- Множественный возврат значений из функции
- Функции с переменным числом параметров
- Рекурсия
- Работа с файлами
- Обработка ошибок в Go
- Возвращение ошибок из функций
- Отложенные (deferred) функции
- Panic и Recover для обработки исключительных ситуаций
- Расширенные возможности Go
- Методы в Go
- Интерфейсы в Go как простой способ реализации полиморфизма
- Рефлексия
- Работа с пакетами
- Низкоуровневое программирование
- Параллелизм в Go
- Goroutines и каналы для параллельного выполнения задач
- Работа с разделяемыми переменными и использование мьютексов для обеспечения безопасности доступа
- Обзор стандартной библиотеки
- Изучение основных компонентов и функций стандартной библиотеки Go
Этот план обучения поможет вам овладеть основами языка Go и его ключевыми возможностями. Вы получите не только теоретические знания, но и практические навыки, выполняя различные задания и проекты. По окончании курса вы будете готовы разрабатывать приложения на Go, использовать эффективные паттерны программирования и работать с распространенными компонентами и библиотеками.
Курс «Разработка веб-сервисов на Golang от VK Образование»
Бесплатно
Ссылка на сайт: https://education.vk.company/curriculum/program/discipline/1285/
Освой в теории и на практике один из самых востребованных языков программирования.
- 13 занятий, 52 ак.часа.
Какие преимущества даёт курс?
- Получишь всестороннее понимание необходимых компонентов в современных веб-системах.
- Освоишь асинхронное программирование, оптимизацию производительности и кодогенерацию.
- Научишься работать с базами данных и микросервисами.
- Разработаешь навыки создания веб-сервисов на языке Go.
Онлайн-интенсивы проводятся один раз в неделю вечером. Записи занятий доступны на портале вместе с домашними заданиями, чтобы закрепить изученные темы.
Преподаватели:
- Антон Сулаев
Руководитель команды backend-разработки Почты Mail.ru. - Никита Алтунин
Разработчик Почты и Календаря Mail.ru. - Вероника Персиянова
Разработчик Почты Mail.ru.
Программа курса:
- Асинхронное программирование
- Основы работы с протоколами HTTP 1 и 2, создание веб-приложений
- Работа с системами хранения данных и базами данных
- Обеспечение безопасности веб-приложений
- Микросервисы, управление конфигурацией, мониторинг
- Непрерывная интеграция и развертывание.
Курс «Cовременная разработка на Go от Hardcode.Dev»
Цена: 42 000 руб.
Ссылка на сайт: https://hardcode.dev/golang
Образовательная программа предназначена для разработчиков backend, которые стремятся освоить язык программирования Golang с целью расширить или изменить свой текущий технологический стек.
- Продолжительность – 12 недель.
Главная цель данного курса заключается в освоении языка Go и его экосистемы, обучении созданию сервисов на этом языке, представлении лучших подходов и практик, а также подготовке участников к работе в реальных проектах.
В результате прохождения курса вы:
- Научитесь разрабатывать готовые к применению в производственной среде приложения на Go
- Освоите экосистему и стандартную библиотеку данного языка
- Приобретете понимание правильной архитектуры приложений на Go и ознакомитесь с лучшими практиками и реальным опытом использования данного языка в проектах
- Освоите тестирование, профилирование и отладку Go-приложений
- Научитесь проектировать и создавать REST API на Go, а также познакомитесь с микросервисной архитектурой
- Приобретете навыки работы с concurrency и go routines
- Погрузитесь в тему высоких нагрузок и масштабируемости, а также узнаете, как Go может помочь в таких ситуациях
- Научитесь проектировать и создавать API на Go, работать с сетью и базами данных, вебсокетами и RPC
- Расширите свои знания и повысите свою ценность как специалиста на рынке труда.
Учебная программа:
- Обзор программы и целей курса. Введение в язык Go.
- Особенности синтаксиса Go и его использование.
- Изучение алгоритмов на языке Go.
- Работа со структурами данных в Go.
- Основы ввода и вывода данных.
- Применение принципов объектно-ориентированного программирования в Go.
- Тестирование кода и модулей.
- Измерение производительности с помощью бенчмарков и отладка программы.
- Профилирование и оптимизация производительности приложения.
- Использование интерфейсов в Go.
- Конкурентное программирование и работа с параллельными процессами.
- Создание сетевых приложений на Go.
- Разработка веб-приложений на Go.
- Создание и использование прикладного программного интерфейса (API).
- Удаленный вызов процедур (RPC) и использование gRPC.
- Работа с реляционными базами данных.
- Разработка приложений, использующих базы данных.
- Архитектура приложений на языке Go.
- Применение микросервисной архитектуры в Go.
- Использование очередей сообщений и нереляционных баз данных.
- Финальный проект для закрепления полученных знаний.
Автор – Дмитрий Титов
Старший Go-разработчик в МТС Банк.
Более 15 лет в ИТ из них 7 лет – в разработке
Fullstack-разработчик, архитектор и руководитель группы разработки
Разрабатывает на Golang с 2016 года.
Курс «Go от metanit»
Бесплатно
Ссылка на сайт: https://metanit.com/go/tutorial/
Содержание:
Глава 1. Введение в язык Go
- Что такое Go
- Первая программа
- Go в LiteIDE
- Go в Visual Studio Code
Глава 2. Основы языка Go
- Структура программы
- Переменные
- Типы данных
- Константы
- Арифметические операции
- Условные выражения
- Поразрядные операции
- Массивы
- Условные конструкции
- Циклы
- Функции и их параметры
- Возвращение результата из функции
- Тип функции
- Анонимные функции
- Рекурсивные функции
- defer и panic
- Срезы
- Отображения
Глава 3. Указатели
- Что такое указатели
- Указатели и функции
Глава 4. Производные типы
- Объявление типов
- Структуры
- Вложенные структуры
- Методы
- Методы указателей
Глава 5. Пакеты и модули
- Пакеты и их импорт
- Введение в модули
Глава 6. Интерфейсы
- Введение в интерфейсы
- Соответствие интерфейсу
- Полиморфизм
Глава 7. Параллельное программирование. Горутины
- Горутины
- Каналы
- Закрытие канала
- Синхронизация
- Передача потоков данных
- Мьютексы
- WaitGroup
Глава 8. Потоки и файлы
- Операции ввода-вывода. Reader и Writer
- Создание и открытие файлов
- Чтение и запись файлов
- Стандартные потоки ввода-вывода и io.Copy
- Форматированный вывод
- Вывод на консоль
- Форматируемый ввод
- Чтение с консоли
- Буферизированный ввод-вывод
Глава 9. Сетевое программирование
- Отправка запросов
- Сервер. Обработка подключений
- Взаимодействие клиента и сервера
- Установка таймаута
- Отправка запросов по HTTP
- Client
Глава 10. Базы данных
- Работа с реляционными база данных
- MySQL
- PostgreSQL
- SQLite
- MongoDB