1. Введение в Go: установка окружения, переменные и базовые типы данных
Введение в Go: установка окружения, переменные и базовые типы данных
Добро пожаловать в мир Go! Если вы читаете эту статью, значит, вы решили освоить один из самых востребованных и эффективных языков программирования современности. Go (или Golang) был разработан в компании Google такими легендами индустрии, как Роб Пайк, Кен Томпсон и Роберт Гризмер. Их цель была амбициозна: создать язык, который сочетал бы в себе производительность C++, простоту чтения кода Python и эффективность разработки.
В этой первой статье курса мы пройдем путь от «чистого листа» до вашей первой работающей программы, разберем, как Go хранит данные и почему строгая типизация — это ваш лучший друг.
Почему именно Go?
Прежде чем мы начнем установку, давайте кратко разберем, почему Go стал языком облачной инфраструктуры (Docker и Kubernetes написаны на нем).
Установка окружения
Чтобы начать писать на Go, нам нужно установить компилятор и инструменты разработки.
Шаг 1: Скачивание и установка
Перейдите на официальный сайт языка: The Go Programming Language.
* Windows: Скачайте MSI-инсталлятор и следуйте инструкциям мастера установки.
* macOS: Скачайте PKG-файл или используйте Homebrew: brew install go.
* Linux: Скачайте архив tar.gz и распакуйте его в /usr/local, добавив путь к бинарным файлам в переменную окружения PATH.
Шаг 2: Проверка установки
Откройте терминал (или командную строку) и введите команду:
Если вы видите что-то вроде go version go1.21.0 darwin/arm64, поздравляю — Go установлен корректно!
Шаг 3: Выбор редактора кода
Хотя код можно писать и в блокноте, для комфортной работы рекомендую использовать Visual Studio Code (VS Code). Это бесплатный редактор, для которого существует официальное расширение Go. Оно обеспечит подсветку синтаксиса, автодополнение и автоматическое форматирование кода.
Ваша первая программа: Hello, World!
В мире программирования есть традиция: первой программой всегда должен быть вывод приветствия. Создайте папку для вашего проекта, а внутри нее файл с названием main.go.
Откройте файл и напишите следующий код:
!Структура базовой программы на Go
Разбор кода
package main: Эта строка сообщает компилятору, что этот файл должен быть скомпилирован как исполняемая программа, а не как общая библиотека.import "fmt": Мы подключаем пакет fmt (format), который содержит функции для форматирования текста, включая вывод на экран.func main() { ... }: Это точка входа. Когда вы запускаете программу, выполнение всегда начинается с функции main.Запуск программы
В терминале, находясь в папке с файлом, выполните:
Команда go run компилирует и сразу запускает вашу программу. Вы должны увидеть вывод: Привет, мир!.
Если вы хотите создать исполняемый файл (например, .exe для Windows), используйте команду go build main.go.
Переменные: хранение данных
Программы работают с данными. Чтобы сохранить данные в памяти, мы используем переменные. В Go переменные — это именованные области памяти определенного типа.
!Переменные как типизированные контейнеры для данных
Объявление переменных
В Go есть два основных способа создать переменную.
#### 1. Полная форма (с ключевым словом var)
Используется, когда мы хотим явно указать тип или объявить переменную без начального значения.
#### 2. Краткая форма (только внутри функций)
Это самый популярный способ. Go сам догадается, какой тип данных вы используете, исходя из значения справа.
Обратите внимание на оператор :=. Он означает «создать новую переменную и присвоить ей значение». Если переменная уже создана, использовать := нельзя, нужно использовать обычное =.
Базовые типы данных
Go — язык со строгой статической типизацией. Это значит, что если вы создали переменную типа «число», вы не можете положить в нее «текст». Это защищает от множества ошибок.
Целые числа (Integers)
Для хранения целых чисел используются типы int, int8, int16, int32, int64. Самый часто используемый — просто int. Его размер зависит от разрядности вашего процессора (32 или 64 бита).
Диапазон значений для знакового целого числа определяется формулой:
Где — допустимое значение переменной, а — количество бит, выделенных под этот тип данных (например, 8, 16, 32 или 64).
Например, для типа int8 () диапазон будет от до .
Числа с плавающей точкой (Floats)
Для дробных чисел используются float32 и float64. В современном программировании стандартом де-факто является float64 из-за высокой точности.
Булев тип (Boolean)
Тип bool может принимать только два значения: true (истина) или false (ложь). Он используется в условиях и циклах.
Строки (Strings)
Строки в Go — это последовательность байтов. Они заключаются в двойные кавычки ". Go имеет полную поддержку Unicode (UTF-8) «из коробки», поэтому вы можете смело использовать эмодзи или кириллицу.
Нулевые значения (Zero Values)
Одной из уникальных особенностей Go является то, что переменные никогда не содержат «мусора». Если вы объявили переменную, но не присвоили ей значение, она автоматически получит нулевое значение для своего типа.
| Тип данных | Нулевое значение |
| :--- | :--- |
| int, float | 0 |
| bool | false |
| string | "" (пустая строка) |
Пример:
Константы
Если вы хотите объявить значение, которое никогда не должно изменяться в процессе работы программы, используйте ключевое слово const.
Попытка изменить константу приведет к ошибке компиляции.
Комментарии
Хороший код должен быть понятен, но иногда нужны пояснения. Комментарии игнорируются компилятором и служат только для людей.
* // — однострочный комментарий (используется чаще всего).
/ ... */ — многострочный комментарий.
Заключение
Сегодня мы сделали первый и самый важный шаг. Мы установили Go, написали первую программу, разобрались с тем, как создавать переменные и какие типы данных существуют. Вы узнали, что Go строг к типам, но эта строгость — залог надежности вашего будущего софта.
В следующей статье мы научимся управлять потоком выполнения программы: использовать условные операторы if и циклы for, чтобы наши программы стали по-настоящему умными.