вторник, 23 марта 2021 г.

Быстрое начало с Go

В этом руководстве вы получите краткое введение в программирование на Go. По пути вы:

  • Установите Go (если вы еще этого не сделали).
  • Напишите простой "Hello, world" код.
  • Используете команду go для запуска вашего кода.
  • Используете инструмент обнаружения пакетов Go, чтобы найти пакеты, которые вы можете использовать в своем собственном коде.
  • Вызовете функцию внешнего модуля.

Предпосылки

  • Некоторый опыт программирования. Код здесь довольно простой, но он помогает кое-что узнать о функциях.
  • Инструмент для редактирования вашего кода. Любой текстовый редактор, который у вас есть, будет работать нормально. Большинство текстовых редакторов хорошо поддерживают Go. Наиболее популярными являются VSCode (бесплатно), GoLand (платно) и Vim (бесплатно).
  • Командный терминал. Go хорошо работает с любым терминалом в Linux и Mac, а также с PowerShell или cmd в Windows.

Установите Go

Просто используйте шаги загрузки и установки.

Напишите код

Начните с Hello, World.

1. Откройте командную строку и перейдите в домашний каталог.

В Linux или Mac:

cd

В Windows:

cd %HOMEPATH%

2. Создайте каталог hello для вашего исходного кода Go.

Например, используйте следующие команды:

mkdir hello
cd hello

3. Включите отслеживание зависимостей для вашего кода.

Когда ваш код импортирует пакеты, содержащиеся в других модулях, вы управляете этими зависимостями через собственный модуль вашего кода. Этот модуль определяется файлом go.mod, который отслеживает модули, которые предоставляют эти пакеты. Этот файл go.mod остается с вашим кодом, в том числе в репозитории исходного кода.

Чтобы включить отслеживание зависимостей для вашего кода путем создания файла go.mod, запустите команду go mod init, указав ей имя модуля, в котором будет находиться ваш код. Имя - это путь модуля к модулю. В большинстве случаев это будет место репозитория, в котором будет храниться ваш исходный код, например github.com/mymodule. Если вы планируете опубликовать свой модуль для использования другими, путь модуля должен быть местом, из которого инструменты Go могут загрузить ваш модуль.

Для целей этого руководства просто используйте example.com/hello.

$ go mod init example.com/hello
go: creating new go.mod: module example.com/hello

4. В текстовом редакторе создайте файл hello.go, в котором вы будете писать свой код.

5. Вставьте следующий код в файл hello.go и сохраните файл.

package main

import "fmt"

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

Это ваш код Go. В этом коде вы:

  • Объявляете основной (main) пакет (пакет - это способ группировки функций, состоящий из всех файлов в одном каталоге).
  • Импортируете популярный пакет fmt, который содержит функции для форматирования текста, включая печать на консоль. Этот пакет является одним из пакетов стандартной библиотеки, которые вы получили при установке Go.
  • Реализуете основную (main) функцию для вывода сообщения на консоль. Основная (main) функция выполняется по умолчанию при запуске основного (main) пакета.

6. Запустите свой код, чтобы увидеть приветствие.

$ go run .
Hello, World!

Команда go run - одна из многих команд go, которые вы будете использовать для работы с Go. Используйте следующую команду, чтобы получить список остальных:

$ go help

Вызов кода во внешнем пакете

Если вам нужен код для выполнения чего-то, что могло быть реализовано кем-то другим, вы можете поискать пакет, в котором есть функции, которые вы можете использовать в своем коде.

1. Сделайте ваше сообщение немного более интересным с помощью функции из внешнего модуля.

  • Посетите pkg.go.dev и найдите пакет "quote".
  • Найдите и щелкните на пакет rsc.io/quote в результатах поиска (если вы видите rsc.io/quote/v3, пока не обращайте на него внимания).
  • В разделе Documentation в разделе Index обратите внимание на список функций, которые вы можете вызывать из своего кода. Вы воспользуетесь функцией Go.
  • Обратите внимание, что в верхней части этой страницы пакет quote включен в модуль rsc.io/quote.

Вы можете использовать сайт pkg.go.dev, чтобы найти опубликованные модули, в пакетах которых есть функции, которые вы можете использовать в своем собственном коде. Пакеты публикуются в модулях, таких как rsc.io/quote, где их могут использовать другие. Со временем модули улучшаются новыми версиями, и вы можете обновить свой код, чтобы использовать улучшенные версии.

2. В коде Go импортируйте пакет rsc.io/quote и добавьте вызов его функции Go.

После добавления выделенных строк ваш код должен включать следующее:

package main

import "fmt"

import "rsc.io/quote"

func main() {
    fmt.Println(quote.Go())
}

3. Добавьте новые требования к модулю и суммы.

Go добавит модуль quote в качестве требования, а также файл go.sum для использования при аутентификации модуля.

$ go mod tidy
go: finding module for package rsc.io/quote
go: found rsc.io/quote in rsc.io/quote v1.5.2

4. Запустите свой код, чтобы увидеть сообщение, созданное вызываемой функцией.

$ go run .
Don't communicate by sharing memory, share memory by communicating.

Обратите внимание, что ваш код вызывает функцию Go, выводя сообщение о коммуникации.

Когда вы запустили go mod tidy, он обнаружил и загрузил модуль rsc.io/quote, содержащий импортированный вами пакет. По умолчанию загружена последняя версия - v1.5.2.


Читайте также:


Комментариев нет:

Отправить комментарий