Логотип
Знания для вашего роста
Бесплатный курс
с практикой
Попробуйте 8 реальных задач и 6 ИТ-профессий
9 июня 2026

Язык программирования Go для начинающих: как установить и написать первую программу

Первую программу на Go можно написать за минуту, даже не устанавливая язык, — прямо в браузере. И это хороший повод присмотреться к языку всерьёз: его создавали в Google ради простоты, на нём написаны Docker и Kubernetes, а медиана зарплат Go-разработчиков в России — 320 000 ₽ (Хабр Карьера, второе полугодие 2025 года).

Дальше — путь новичка по шагам: попробуем код в браузере, поставим Go на Windows, macOS или Linux, создадим первый проект и разберём основы синтаксиса.

Редакция

Медиа Нетологии

Первую программу на Go можно написать за минуту, даже не устанавливая язык, — прямо в браузере. И это хороший повод присмотреться к языку всерьёз: его создавали в Google ради простоты, на нём написаны Docker и Kubernetes, а медиана зарплат Go-разработчиков в России — 320 000 ₽ (Хабр Карьера, второе полугодие 2025 года).

Дальше — путь новичка по шагам: попробуем код в браузере, поставим Go на Windows, macOS или Linux, создадим первый проект и разберём основы синтаксиса.
В материале

Зачем изучать Go и где его используют

Go (его же называют golang — по старому домену golang.org) — компилируемый язык программирования. Компилируемый — значит, что перед запуском весь код целиком переводится в машинные команды и превращается в отдельный файл-программу, который дальше работает сам по себе, без посредников. Отсюда и главное преимущество Go: программы на нём запускаются быстро. 

Язык начали проектировать в Google в 2007 году, в 2009-м он стал публичным проектом с открытым кодом, а актуальная версия — Go 1.26 — вышла в феврале 2026 года. По данным Stack Overflow Developer Survey 2025, Go входит в число языков, продолжающих расти в популярности.

Ещё две приметы языка: строгая типизация и встроенная работа с многозадачностью. Строгая типизация означает, что для каждой переменной заранее известно, что в ней лежит: число, текст или что-то ещё. Язык не даст случайно сложить число со строкой — и тем самым отлавливает часть ошибок ещё до запуска. А за многозадачность отвечают горутины — лёгкие подпрограммы, которые Go умеет выполнять конкурентно (и при необходимости параллельно), — так одна программа делает много дел одновременно. Ради этого язык во многом и создавали.

Где используется Go на практике:
  • Бэкенд и микросервисы. Бэкенд (от английского back end) — это серверная сторона сайтов и приложений, скрытая от пользователя: она обрабатывает запросы и работает с базой данных. Микросервисы — подход, при котором большое приложение собирают из множества небольших независимых частей. Go для них — один из популярных языков: на нём работают бэкенды Авито и Ozon.
  • Облачные технологии и инфраструктура. Docker, Kubernetes и Terraform — инструменты для запуска и управления приложениями на серверах — написаны на Go, как и многие соседние утилиты.
  • Сетевые сервисы и программы командной строки. Здесь важны скорость и небольшой размер готового файла. На Go написаны, к примеру, веб-сервер Caddy, генератор сайтов Hugo и официальная консольная утилита GitHub — gh.
  • Блокчейн. Блокчейн — это распределённая база данных, на которой работают криптовалюты. Такая сеть состоит из узлов: программ, которые хранят данные и проверяют операции. Один из главных узлов сети Ethereum — go-ethereum, или просто geth, — написан на Go: язык быстрый и эффективно обрабатывает множество соединений, а для узла это главное.
Для новичка Go удобен своей лаконичностью: в языке всего 25 ключевых слов — меньше, чем в большинстве массовых языков, — поэтому синтаксис быстро укладывается в голове. А ещё он почти не оставляет места для споров о стиле: встроенная команда go fmt сама расставляет отступы и переносы по единому стандарту, и любой код на Go выглядит одинаково, чей бы он ни был. Меньше деталей, о которых нужно думать на старте, — больше внимания к самой логике.
От теории к практике ↓
Попробуете базовые действия из работы ИТ-специалистов: исправите ошибку в коде, запустите пайплайн, проверите сеть и закроете уязвимость. В результате поймёте, какое направление вам подходит и какие навыки нужно развивать дальше.
Записаться на курс
Расскажет о профессии веб-разработчика, поможет собрать документы к поступлению. Также здесь доступны демоверсии вступительных испытаний, записи дней открытых дверей и примеры семинаров.
Получить доступ

Как попробовать Go в браузере без установки

Самый быстрый способ попробовать язык — открыть Go Playground, официальную онлайн-песочницу по адресу go.dev/play. Это страница, где код пишут в одном окне, а результат сразу видят в другом: ничего скачивать и настраивать не нужно.

В поле для кода уже лежит готовый пример — программа, которая выводит приветствие:

package main

import "fmt"

func main() {

fmt.Println("Hello, 世界")

}

Достаточно нажать кнопку Run — и внизу появится результат. Можно заменить текст в кавычках на свой и запустить снова:

fmt.Println("Привет, мир!")

Это уже программа на Go. Разберём её построчно чуть позже, когда дойдём до первого проекта. А пока важно другое: язык можно потрогать прямо сейчас, без единой установки.
Песочница хороша для знакомства с языком. Но всерьёз работать в ней неудобно: нельзя хранить проекты и обращаться с ними как с полноценным кодом, нельзя собрать проект из нескольких файлов и подключить сторонние библиотеки. Поэтому следующий шаг — поставить Go на компьютер.

Установка Go на разные системы

Процесс зависит от системы, но логика везде одна: скачать установщик с официального сайта go.dev/dl, запустить его и проверить результат. Сайт сам определит систему и предложит подходящий файл. Ниже — три ветки под три системы.

Установка Go на Windows

На Windows 10 и 11 порядок такой:

  1. Открыть go.dev/dl и скачать установщик с расширением .msi.
  2. Запустить скачанный файл и пройти стандартные шаги: Next → принять условия → Install.
  3. Дождаться окончания установки.

Отдельно прописывать пути не нужно: установщик для Windows сам добавляет Go в систему, так что после перезапуска консоли язык будет доступен из любой папки.

Установка Go на Linux

Здесь надёжнее поставить Go из официального архива — так получится самая свежая версия. Сначала нужно скачать архив для Linux с go.dev/dl, а затем распаковать его в системную папку:

sudo rm -rf /usr/local/go

sudo tar -C /usr/local -xzf go1.26.0.linux-amd64.tar.gz

Первая команда удаляет прежнюю версию Go, если она была, вторая — распаковывает новую в /usr/local. Имя файла в команде нужно заменить на актуальное — то, что скачалось с сайта.

После этого Go нужно прописать в PATH (от английского path — «путь») — список адресов, по которым система ищет программы. Для этого в конец файла ~/.profile или ~/.bashrc добавляют:

export PATH=$PATH:/usr/local/go/bin

export PATH=$PATH:$(go env GOPATH)/bin

Чтобы изменения вступили в силу, терминал перезапускают. В некоторых дистрибутивах Go можно поставить и через пакетный менеджер командой sudo apt install golang-go, но версия там может быть старее официальной — для учёбы это терпимо, для рабочих проектов лучше брать архив с сайта.

Установка Go на macOS

На macOS два рабочих способа:

  • Через официальный сайт. Скачать установщик с расширением .pkg с go.dev/dl, открыть его и пройти стандартные шаги — «Продолжить», «Установить». Способ подойдёт тем, кто не хочет разбираться с командной строкой.
  • Через Homebrew. Если на компьютере стоит пакетный менеджер Homebrew — инструмент для установки других программ через команды, — достаточно ввести в терминале одну строку:

brew install go

Оба способа рабочие, для старта проще первый.

Первый запуск: проверка, что Go работает

Установщик закрылся без ошибок — это ещё не гарантия, что всё работает. Поэтому следующий шаг — проверка.

Нужно открыть консоль (на Windows — «Командную строку» или PowerShell, на macOS и Linux — «Терминал») и ввести команду:

go version

Если в ответ появилась строка вроде go version go1.26.0 windows/amd64 — язык установлен и виден системе. Если же консоль отвечает, что команда go не найдена — это значит, установка не завершилась до конца. Что с этим делать — разберём в блоке про частые ошибки.

Редактор кода для Go

Писать код можно хоть в «Блокноте», но работать так неудобно. Поэтому используют редактор кода или среду разработки (IDE, от английского integrated development environment — «интегрированная среда разработки»): они подсвечивают синтаксис, подсказывают команды и помогают находить ошибки.

Для старта оптимален VS Code — бесплатный редактор, который не перегружен лишним и при этом умеет всё нужное. Настроить его под Go несложно:

  1. Скачать и установить VS Code.
  2. Открыть вкладку с расширениями (иконка с кубиками на боковой панели).
  3. Найти в поиске расширение Go и установить его — оно добавляет подсветку, подсказки и автоматическое форматирование кода.

Если хочется начать совсем без настроек, первую программу можно написать и в любом текстовом редакторе, а запускать из консоли. Но как основной инструмент VS Code удобнее: к нему не придётся искать замену, когда задачи усложнятся.

Первый проект: модуль, структура и запуск

В Go код хранят внутри проекта, который называют модулем. Поэтому путь к первой программе состоит из трёх шагов: создать проект, написать в нём файл с кодом и запустить.

Инициализация проекта Go

Сначала нужно создать папку для проекта — с названием латиницей вроде hello — и открыть её в консоли. Затем внутри папки выполнить команду:

go mod init example/hello

Команда go mod init создаёт в папке файл go.mod — это что-то вроде паспорта проекта: по нему Go понимает, что перед ним не просто набор файлов, а настоящий модуль, и знает его имя и минимальную версию Go, с которой совместим проект. Внутри go.mod после команды будет примерно такое:

module example/hello

go 1.26

Здесь example/hello — имя модуля. Его придумывают сами, а в реальных проектах это обычно адрес репозитория — папки с кодом на сервисе вроде GitHub. go 1.26 — версия языка, под которую написан проект. Этот файл и превращает папку в настоящий Go-проект — теперь в нём можно писать код.

Структура простейшей программы

В папке проекта нужно создать файл main. go — это расширение для исходного кода на Go. В него помещают сам код. Вот как выглядит минимальная программа на Go — всего пять строк:

package main

import «fmt»

func main () {

fmt. Println («Привет, мир!»)

}

Что здесь происходит, строка за строкой:
  • package main — строка, которая указывает, к какому пакету относится файл. Пакет — это группа файлов с кодом, а main — особый пакет, с которого начинается исполняемая программа. Без него Go не поймёт, что файл нужно запускать;
  • import "fmt" — подключение пакета fmt из стандартной библиотеки (набора готовых инструментов, который ставится вместе с языком). Пакет fmt отвечает за ввод и вывод текста, и из него берётся функция печати;
  • func main() — функция с именем main, точка входа в программу. Когда Go запускает код, он начинает выполнять именно её — всё, что стоит внутри фигурных скобок;
  • fmt.Println("Привет, мир!") — вызов функции Println из пакета fmt. Она выводит на экран то, что стоит в скобках, и переводит строку.
Здесь же видна одна из особенностей Go: имена с большой буквы (как Println) доступны из других пакетов, а с маленькой — только внутри своего. Регистр первой буквы и управляет видимостью.

Как запустить Go-файл

Осталось выполнить программу. В папке проекта откройте консоль и введите:

go run main.go

Команда go run компилирует код и сразу запускает его. В ответ в консоли появится:

Привет, мир!

Если же программу нужно не просто запустить, а собрать в отдельный файл, который потом можно переносить и запускать без Go, используют другую команду:

go build

После неё в папке появится готовый исполняемый файл — на Windows с расширением .exe, на macOS и Linux без расширения. Это и есть та самая скомпилированная программа, ради скорости которой выбирают Go.
✔️ Курс для начинающих с изучением ИИ и программой трудоустройства

✔️ Практика: 6 проектов в портфолио, 47 реальных заданий, тестовые собеседования

✔️ Поддержка: обратная связь от экспертов и возможность стажировки у партнёров

Итог → освоите Golang с нуля на продвинутом уровне и сможете начать поиск работы уже через 4 месяца обучения.
Выбрать программу обучения
✔️ Курс для начинающих с изучением ИИ и программой трудоустройства

✔️ Практика: 6 проектов в портфолио, 47 реальных заданий, тестовые собеседования

✔️ Поддержка: обратная связь от экспертов и возможность стажировки у партнёров
Выбрать программу обучения

Основы синтаксиса Go

Переменные и константы

Переменная — это именованная ячейка для данных. В Go её объявляют в полной форме, через слово var, или в короткой — через :=:

var age int = 25   // полная форма: имя, тип, значение

city := "Москва"   // короткая форма: тип Go определит сам

В короткой форме тип указывать не нужно — Go сам поймёт по значению, что city — это текст. Если значение в будущем не изменится, вместо переменной заводят константу через слово const:

const pi = 3.14

Типы данных Go

Тип определяет, что лежит в переменной и что с этим можно делать. Базовых типов в Go немного, и на старте хватит четырёх:
  • int — целые числа: 1, 42, -7;
  • float64 — числа с дробной частью: 3.14, 0.5;
  • string — текст в кавычках: "Привет";
  • bool — логическое значение, всего два варианта: true (истина) или false (ложь).
Когда данных много, их собирают в составные типы:
  • массив [5]int — набор фиксированной длины;
  • срез []int — список переменной длины, на практике его используют чаще массива;
  • мапа map[string]int — пары «ключ — значение», как в словаре;
  • структура — несколько полей разных типов под одним именем: скажем, имя и возраст в одной карточке пользователя.
На первых порах достаточно знать, что они есть. Разобраться в них подробнее можно позже.

Условия

Чтобы программа принимала решения, используют конструкцию if — «если». После неё пишут условие, а в фигурных скобках — что делать, когда оно выполняется. Блок else отвечает за случай «иначе»:

if age >= 18 {

fmt.Println("Совершеннолетний")

} else {

fmt.Println("Несовершеннолетний")

}

Скобки вокруг самого условия в Go не ставят — в отличие от многих других языков.

Циклы в Go

Цикл повторяет один и тот же кусок кода несколько раз. В Go для этого есть всего одно слово — for, но у него три формы.

Классический цикл со счётчиком — выполнить код заданное число раз:

for i := 0; i < 5; i++ {

fmt.Println(i)

}

Здесь i стартует с нуля, цикл идёт, пока i < 5, и после каждого прохода i растёт на единицу (i++). На экран выведутся числа от 0 до 4.

Та же конструкция без счётчика работает как цикл «пока» — выполняется, пока истинно условие:

for n > 0 {

n--

}

Третья форма перебирает готовый список через range и проходит по всем элементам без явных индексов:

nums := []int{10, 20, 30}

for _, value := range nums {

fmt.Println(value)

}

Подчёркивание _ на месте индекса означает «он мне не нужен» — иначе Go пожалуется на неиспользованную переменную. Одно слово for на все случаи — ещё один пример того, как Go экономит на правилах.

Полезные команды и установка пакетов

Многое в Go уже встроено: пакет fmt для ввода и вывода, strings для работы с текстом, time для дат — всё это лежит в стандартной библиотеке и подключается простым import, без скачиваний.

Когда же нужного пакета нет под рукой, его подключают через import в коде, а затем Go сам обновляет зависимости проекта. Для этого обычно достаточно команды:

go mod tidy

Она добавит в go.mod и go.sum всё, что действительно используется, и уберёт лишнее.
На старте сторонние пакеты почти не нужны — стандартной библиотеки хватает надолго. Но знать механизм всё равно полезно.

Команды Go, которые пригодятся чаще всего:

Частые ошибки новичков

Go не является внутренней или внешней командой (или command not found). Система не знает, где искать Go. Обычно дело в том, что после установки не перезапустили консоль или Go не прописался в PATH. Решение — закрыть и заново открыть терминал, а если не помогло, переустановить Go с официального сайта.

Go: go.mod file not found in current directory or any parent directory. Так Go сообщает, что команду запустили в папке без проекта. Нужно сначала выполнить go mod init — тогда появится файл go.mod, и Go увидит модуль.

Declared and not used или imported and not used. Особенность Go, которая поначалу удивляет: язык не компилирует код, если в нём остались неиспользуемые переменные или импорты. Это не каприз, а защита от мусора в коде: лишнюю строку нужно либо использовать, либо удалить.

Программа не запускается из консоли. Чаще всего команду вводят не из той папки, где лежит проект. Нужно перейти в папку проекта командой cd с путём до неё, и уже потом запускать.

Общий принцип: текст ошибки — не приговор, а подсказка. Последняя строка сообщения почти всегда коротко говорит, что именно не так, — её стоит прочитать, а не пугаться красного цвета.

Идеи для простых проектов на Go

Главное уже позади: Go установлен, проект создан, первая программа написана и запущена. Дальше язык осваивают через маленькие задачи — на них быстрее всего видно прогресс.

Вот несколько проектов для старта — от простого к более сложному:
  • Калькулятор. Складывает, вычитает, умножает и делит два числа: программа запрашивает числа, по выбранной операции считает результат и выводит его. Самый мягкий старт — закрепляет переменные, типы и условия (if для выбора операции) и помогает привыкнуть к структуре программы. Подойдёт сразу после первой программы.
  • Конвертер валют. Переводит рубли в доллары по курсу, заданному прямо в коде: умножает сумму на курс и показывает результат. Тренирует работу с дробными числами (float64) и вывод. Хороший выбор, когда хочется довести до конца маленькую, но настоящую утилиту.
  • Игра «Угадай число». Программа загадывает число, а игрок пытается угадать: после каждой попытки она подсказывает «больше» или «меньше» — и так, пока число не отгадано. Связывает циклы и условия — это первый проект с настоящей логикой. Заодно получается готовая мини-игра, которую интересно показать друзьям.

Шпаргалка, чтобы держать под рукой

  • Скачивать Go только с официального сайта go.dev/dl.
  • Проверка установки — команда go version.
  • Новый проект — команда go mod init.
  • Запуск — go run main.go, сборка в файл — go build.
  • Первая программа — файл main.go с пакетом main, функцией main и fmt.Println.

Первый шаг — самый трудный, и он уже сделан. Дальше всё решает практика: каждая новая программа добавляет уверенности.
Читать также
Чтобы быть в курсе всех новостей и не пропускать новые статьи, присоединяйтесь к Telegram-каналу Нетологии.
Оцените статью