1. Введение в Go: установка окружения, структура программы и Hello World
Введение в Go: установка окружения, структура программы и Hello World
Go (или Golang) — это компилируемый многопоточный язык программирования, разработанный внутри компании Google. Его создатели — Роб Пайк, Кен Томпсон и Роберт Гризмер — стремились создать инструмент, который сочетал бы производительность C++ с простотой чтения кода и скоростью разработки, присущей динамическим языкам вроде Python.
Go отличается строгой статической типизацией, встроенной поддержкой конкурентности и автоматическим управлением памятью (сборщик мусора). Эти качества делают его стандартом де-факто в разработке облачных сервисов, микросервисов и высоконагруженных систем.
Установка и настройка окружения
Для начала работы необходимо установить компилятор и инструменты Go. Процесс установки максимально упрощен для всех популярных операционных систем.
Шаг 1: Загрузка дистрибутива
Перейдите на официальный сайт go.dev и скачайте установочный файл для вашей операционной системы (Windows, macOS или Linux). Рекомендуется всегда использовать последнюю стабильную версию.
Шаг 2: Установка
Следуйте инструкциям установщика:
* Windows: Запустите .msi файл и следуйте подсказкам мастера установки. По умолчанию Go устанавливается в C:\Program Files\Go.
* macOS: Откройте .pkg файл и следуйте инструкциям. Go будет установлен в /usr/local/go.
* Linux: Распакуйте архив в /usr/local и добавьте путь /usr/local/go/bin в переменную окружения PATH.
Шаг 3: Проверка установки
После завершения установки откройте терминал (или командную строку) и введите команду:
Если установка прошла успешно, вы увидите сообщение с версией установленного Go, например: go version go1.21.0 darwin/arm64.
Выбор редактора кода
Go не требует сложной IDE, но использование редактора с поддержкой языковых инструментов значительно ускоряет обучение. Два наиболее популярных варианта:
Для начала обучения VS Code является оптимальным выбором.
Первая программа: Hello World
Традиционно изучение языка начинается с написания программы, выводящей текст на экран. В Go исходный код хранится в файлах с расширением .go.
Создайте папку для вашего проекта, а внутри нее файл с именем main.go. Откройте этот файл в редакторе и напишите следующий код:
!Разбор анатомии простой программы на Go: объявление пакета, импорт библиотек и главная функция
Разбор структуры программы
Каждая строка в этом коде имеет важное значение.
#### 1. Объявление пакета
Первая строка любого Go-файла должна объявлять имя пакета. Пакет — это способ группировки функций и переменных. Пакет с именем main является особенным: он сообщает компилятору, что этот код должен быть скомпилирован в исполняемую программу, а не в библиотеку.
#### 2. Импорт зависимостей
Ключевое слово import подключает внешние пакеты. В данном случае мы подключаем пакет fmt (сокращение от format) из стандартной библиотеки Go. Этот пакет содержит функции для форматирования ввода и вывода текста, включая вывод на консоль.
#### 3. Главная функция
Ключевое слово func используется для объявления функций. Функция main — это точка входа в программу. Когда вы запускаете приложение, выполнение кода начинается именно с этой функции. Фигурные скобки { и } ограничивают тело функции.
#### 4. Вызов функции из пакета
Здесь мы обращаемся к пакету fmt и вызываем его функцию Println (Print Line), которая выводит текст в консоль и добавляет перевод строки в конце. Обратите внимание, что в Go публичные функции (доступные из других пакетов) всегда начинаются с Заглавной буквы.
Запуск и компиляция
Существует два основных способа выполнить код на Go.
Команда go run
Для быстрой проверки кода во время разработки используется командаgo run. Она компилирует программу во временную папку, запускает её и сразу удаляет исполняемый файл после завершения.В терминале, находясь в папке с файлом main.go, выполните:
Вывод:
Команда go build
Для создания полноценного исполняемого файла (бинарника), который можно запустить на другом компьютере даже без установленного Go, используется командаgo build.Эта команда создаст файл main (или main.exe в Windows) в текущей директории. Запустить его можно напрямую:
Форматирование кода
Одной из уникальных особенностей экосистемы Go является стандарт форматирования кода. Вам не нужно спорить о том, где ставить скобки или использовать ли пробелы вместо табуляции. В Go есть единственно правильный стиль.
Утилита gofmt автоматически форматирует код согласно стандартам языка. Большинство редакторов (включая VS Code) запускают этот инструмент автоматически при сохранении файла.
Пример «некрасивого» кода:
После обработки gofmt он превратится в:
Это обеспечивает единообразие кодовой базы во всех проектах на Go, независимо от того, кто их писал.
Итоги
* Go — компилируемый язык со строгой типизацией, созданный для эффективной разработки надежного ПО.
* Для создания исполняемой программы файл должен начинаться с package main и содержать функцию func main().
* Команда go run используется для быстрого запуска, а go build — для создания бинарного файла.
* Публичные функции в пакетах всегда начинаются с большой буквы (например, fmt.Println).
* Стандарт форматирования gofmt обязателен и гарантирует читаемость кода.