Поздравляю! Go установлен, и ты готов написать свою первую программу. Мы будем использовать Visual Studio Code (VS Code) — удобный редактор, который идеально подходит для новичков. В этой статье ты создашь программу Hello, world!
, узнаешь, как она устроена, и научишься запускать её прямо из VS Code. Поехали!
📝 Что такое программа на Go?
Программа на Go — это текстовый файл с расширением .go
, в котором написан код на языке Go. Она состоит из пакетов, функций и инструкций. Мы начнём с простой программы, чтобы понять, как всё работает.
✍️ Пишем первую программу в VS Code
Давай создадим программу, которая выведет “Hello, world!” на экран. Всё будем делать в VS Code, чтобы было просто и понятно.
Шаг 1: Создай новый файл
- Открой VS Code.
- Нажми на меню File (Файл) → New File (Новый файл).
- Сохрани файл:
- Нажми File → Save As (Сохранить как).
- Выбери папку, например,
go/src/hello
в твоей домашней директории (обычно это~/go/src/hello
илиC:\Users\Твоё_Имя\go\src\hello
). - Назови файл
hello.go
(важно, чтобы расширение было.go
). - Нажми Save (Сохранить).
Шаг 2: Напиши код
В открытом файле hello.go
напиши следующий код:
package main
import "fmt"
func main() {
fmt.Println("Hello, world!")
}
После ввода кода сохрани файл: нажми File → Save или используй сочетание клавиш Ctrl+S
.
Шаг 3: Что этот код делает?
package main
: Указывает, что это главная программа, которая может запускаться.import "fmt"
: Подключает пакетfmt
(сокращение от “format”), чтобы выводить текст.func main()
: Это точка входа программы — место, где она начинает работать.fmt.Println("Hello, world!")
: Выводит текст “Hello, world!” на экран.
💡 Совет: Если VS Code подсвечивает код цветом (например,
package
илиfmt
выделены), значит, расширение Go установлено и работает. Если нет, убедись, что ты установил расширение Go для VS Code.
🧠 Структура Go-программы
Каждая Go-программа имеет чёткую структуру. Разберём её на примере нашей программы:
Пакет (
package
):
Все Go-программы принадлежат к какому-то пакету. Пакетmain
— это специальный пакет для программ, которые можно запускать. Другие пакеты используются для библиотек.Импорт (
import
):
Позволяет использовать готовые функции из пакетов. Мы подключилиfmt
для вывода текста.Функция
main
:
Это главная функция программы. Go начинает выполнение именно с неё. Безfunc main()
программа не запустится.Код внутри функции:
Внутриmain
мы используемfmt.Println
для вывода текста. Это одна из функций пакетаfmt
.
💡 Совет: Всегда сохраняй файлы с расширением
.go
. Это стандарт для Go.
🚀 Запуск программы в VS Code
VS Code позволяет запускать Go-программу без использования терминала. Если ты установил расширение Go, всё будет просто.
🔹 Вариант 1: Запуск с помощью “Run Code”
- Открой файл
hello.go
в VS Code. - В верхнем правом углу будет кнопка ▶️ Run Code, нажми на неё.
- Внизу в VS Code появится панель Output (Вывод), и ты увидишь:
Hello, world!
💡 Примечание: Команда Run Code запускает программу с помощью
go run
. Это быстрый способ протестировать код, но он не создаёт отдельный файл программы. 💡 Совет: Если кнопки Run Code нет, то нужно вручную установить расширение Code Runner.
🔹 Вариант 2: Использование командной строки Go
Для работы с Go-программами можно использовать команды go run
и go build
в командной строке. Эти команды позволяют запускать и компилировать программы. Давай разберём, как они работают, на примере файла hello.go
.
Открытие терминала:
- Открой терминал в своей операционной системе:
- На Windows: используй Командную строку (cmd), PowerShell или терминал в VS Code.
- На Linux/macOS: открой Терминал.
- Перейди в папку, где находится файл
hello.go
, с помощью командыcd
. Например:cd ~/go/src/hello
- Открой терминал в своей операционной системе:
Запуск программы с помощью
go run
:- Введи в терминале:
go run hello.go
- Команда
go run
компилирует и сразу выполняет программу. Ты увидишь вывод:Hello, world!
- Особенность:
go run
не создаёт отдельный исполняемый файл. Это удобно для быстрого тестирования кода.
- Введи в терминале:
Компиляция программы с помощью
go build
:- Введи в терминале:
go build hello.go
- Команда
go build
компилирует код и создаёт исполняемый файл:- На Linux/macOS: появится файл
hello
. - На Windows: появится файл
hello.exe
.
- На Linux/macOS: появится файл
- Особенность: Скомпилированный файл можно запускать без установленного Go и переносить на другие компьютеры с той же операционной системой.
- Введи в терминале:
💡 Совет: Используй
go run
для быстрого тестирования кода во время разработки. Применяйgo build
, если хочешь создать переносимую программу, которую можно запускать без Go или передать другим.
🛠️ Что такое компиляция?
Компиляция — это процесс, когда твой код на Go превращается в программу, которую может понять компьютер. Go — это компилируемый язык, в отличие от языков вроде Python, которые интерпретируются. Это значит, что программа сначала превращается в исполняемый файл (например, hello.exe
), а затем запускается.
Преимущества компиляции:
- Программа работает быстрее.
- Ты можешь передать файл
hello.exe
на другой компьютер (с той же операционной системой), и он запустится без установки Go.
⚙️ Как работает Go-программа?
Когда ты запускаешь программу (через Run Code или скомпилированный файл):
- Go проверяет код на ошибки.
- Если ошибок нет, программа компилируется (для
go run
— временно, дляgo build
— в файл). - Выполнение начинается с функции
main
. - В нашем случае вызывается
fmt.Println
, и текст “Hello, world!” выводится в консоль.
🧠 Проверь свои знания
- Что означает директива
package main
в программе на Go, и почему она обязательна для запускаемой программы? - Какую роль выполняет строка
import "fmt"
в коде? Что произойдёт, если её убрать? - Объясни, что делает функция
main
в программе. Почему без неё программа не запустится? - В чём разница между go run и go build? Когда стоит использовать каждую из этих команд?
- Что такое компиляция, и какие преимущества она даёт для Go-программ по сравнению с интерпретируемыми языками, такими как Python?
🚀 Что дальше?
Ты написал и запустил свою первую программу на Go! Теперь ты готов изучать основы языка. В следующем разделе мы разберём Основы: переменные, типы данных и простые операции.
💡 Задание: Попробуй изменить текст в
fmt.Println
(например, на “Привет, Go!”) и снова запусти программу через Run Code. Убедись, что всё работает!