Logo
Книга для начинающих
ВходРегистрация
/
Программирование
/
Курс Golang
/

Привет, Мир!

Golang: Привет, Мир!

По традиции начнем с написания программы 'Hello, World!'. Эта программа будет выводить на экран текст:

package main

import "fmt"

func main() {
	fmt.Println("Hello, World!")
}

Пояснение

Пакеты в Go выполняют роль неймспейсов — логических единиц, объединяющих функции и типы. Каждый файл в Go должен принадлежать какому-то пакету. Если вы хотите, чтобы программа была исполняемой, файл должен принадлежать пакету main — это сигнал компилятору, что здесь содержится точка входа в программу.

Затем мы импортировали пакет fmt:

import "fmt"

Go устроен минималистично: чтобы использовать функции из стандартной библиотеки или сторонних модулей, их необходимо явно импортировать. Пакет fmt содержит функции форматированного ввода и вывода, включая Print, Println, Printf и другие. Импорт всегда указывается в начале файла, сразу после названия пакета.

Далее идёт определение главной функции:

func main() {
	...
}

main() — это точка входа в программу. Она вызывается автоматически при запуске и должна обязательно присутствовать в исполняемом Go-приложении. Функция main не принимает аргументов и ничего не возвращает. Внутри неё описывается логика запуска программы.

Для вывода текста на экран используется функция:

fmt.Print("Hello, World!")

Обратите внимание, что fmt — это не объект, а имя пакета. В Go нет классов, и всё устроено проще: функции организованы по пакетам, и к ним обращаются по следующему синтаксису: пакет.функция. Вызов fmt.Print(...) означает: "вызвать функцию Print из пакета fmt".

Дополнительно

  • В конце строки не ставится точка с запятой — компилятор Go автоматически расставляет ; за вас в большинстве случаев.
  • Отступы важны: по соглашению в Go используется 1 таб, а не пробелы.
  • Если бы вы забыли импортировать fmt, программа не скомпилируется — Go строго требует явного указания зависимостей.

Задание

Наберите в редакторе код из задания символ в символ и нажмите «Запустить».

// Определение пакета
package main

// Импорт пакета
import "fmt"

// Определение функции main
func main() {
	// Вызов функции Print из пакета fmt
	// Отступ 1 таб
	fmt.Print("Hello, World!") // В конце не нужна точка с запятой
}
Коммерческий опыт и Трудоустройство

Полезное

  • Go Playground — здесь вы можете экспериментировать с кодом на Go.

  • Официальная документация

Команда проекта находится в телеграм-сообществе. Там можно задать любой вопрос и повлиять на проект

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются
/
Программирование
/
Курс Golang
/

Привет, Мир!

Golang: Привет, Мир!

По традиции начнем с написания программы 'Hello, World!'. Эта программа будет выводить на экран текст:

package main

import "fmt"

func main() {
	fmt.Println("Hello, World!")
}

Пояснение

Пакеты в Go выполняют роль неймспейсов — логических единиц, объединяющих функции и типы. Каждый файл в Go должен принадлежать какому-то пакету. Если вы хотите, чтобы программа была исполняемой, файл должен принадлежать пакету main — это сигнал компилятору, что здесь содержится точка входа в программу.

Затем мы импортировали пакет fmt:

import "fmt"

Go устроен минималистично: чтобы использовать функции из стандартной библиотеки или сторонних модулей, их необходимо явно импортировать. Пакет fmt содержит функции форматированного ввода и вывода, включая Print, Println, Printf и другие. Импорт всегда указывается в начале файла, сразу после названия пакета.

Далее идёт определение главной функции:

func main() {
	...
}

main() — это точка входа в программу. Она вызывается автоматически при запуске и должна обязательно присутствовать в исполняемом Go-приложении. Функция main не принимает аргументов и ничего не возвращает. Внутри неё описывается логика запуска программы.

Для вывода текста на экран используется функция:

fmt.Print("Hello, World!")

Обратите внимание, что fmt — это не объект, а имя пакета. В Go нет классов, и всё устроено проще: функции организованы по пакетам, и к ним обращаются по следующему синтаксису: пакет.функция. Вызов fmt.Print(...) означает: "вызвать функцию Print из пакета fmt".

Дополнительно

  • В конце строки не ставится точка с запятой — компилятор Go автоматически расставляет ; за вас в большинстве случаев.
  • Отступы важны: по соглашению в Go используется 1 таб, а не пробелы.
  • Если бы вы забыли импортировать fmt, программа не скомпилируется — Go строго требует явного указания зависимостей.

Задание

Наберите в редакторе код из задания символ в символ и нажмите «Запустить».

// Определение пакета
package main

// Импорт пакета
import "fmt"

// Определение функции main
func main() {
	// Вызов функции Print из пакета fmt
	// Отступ 1 таб
	fmt.Print("Hello, World!") // В конце не нужна точка с запятой
}
Коммерческий опыт и Трудоустройство

Полезное

  • Go Playground — здесь вы можете экспериментировать с кодом на Go.

  • Официальная документация

Команда проекта находится в телеграм-сообществе. Там можно задать любой вопрос и повлиять на проект

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются
← ПредыдущийСледующий →
← ПредыдущийСледующий →
← ПредыдущийСледующий →

Ваше упражнение проверяется по этим тестам

package main

import (
	"fmt"
	"log"
	"os/exec"
	"testing"
)

func TestHelloWorld(t *testing.T) {
	cmd := exec.Command("go", "run", "solution.go")
	out, err := cmd.CombinedOutput()
	if err != nil {
		log.Fatalf("error on running the command: %v\n", err)
	}
	fmt.Println(string(out))
	// Output:
	// Hello, World!
}
← ПредыдущийСледующий →

Решение учителя откроется через:

20:00

waiting_clock
← ПредыдущийСледующий →