Golang, также известный как Go, - это современный язык программирования с открытым исходным кодом, разработанный компанией Google. Он был разработан Робертом Грисемером, Робом Пайком и Кеном Томпсоном с основной целью создания простого, эффективного и удобного в использовании языка для разработки программного обеспечения. Go был впервые выпущен в 2009 году и завоевал широкую популярность среди разработчиков благодаря своей скорости, простоте и мощным возможностям.
Ключевые особенности и преимущества Golang
- Параллельность: Golang предлагает встроенную поддержку параллельного программирования с помощью goroutines, легких потоков, управляемых средой выполнения Go. Это обеспечивает эффективную и простую параллельную обработку, что делает его хорошо подходящим для приложений, требующих параллелизма, таких как веб-серверы и сетевые инструменты.
- Статическая типизация: Go является статически типизированным языком, что помогает отлавливать ошибки, связанные с типами, во время компиляции. Эта особенность повышает безопасность кода и обеспечивает лучшую производительность во время выполнения.
- Сборка мусора: Go включает в себя эффективный сборщик мусора, который автоматически управляет памятью и возвращает неиспользуемую память. Эта функция снижает риск утечки памяти и упрощает процесс разработки.
- Кросс-платформенность: Go поддерживает множество платформ, включая Windows, macOS, Linux и другие. Это позволяет разработчикам писать код, который может быть легко скомпилирован и выполнен в различных операционных системах без каких-либо изменений.
- Стандартная библиотека: Go имеет богатую стандартную библиотеку, которая предоставляет широкий спектр пакетов и функций для решения общих задач программирования, таких как работа с файлами, работа с регулярными выражениями и работа в сети. Это позволяет разработчикам создавать мощные приложения, не полагаясь на сторонние библиотеки.
Golang в сравнении с другими языками
- Простота: Язык Go разработан как простой и легкий в изучении, с чистым синтаксисом, который позволяет разработчикам быстро понимать и писать код. Это контрастирует с такими языками, как C++ и Java, которые могут быть более сложными и трудными для освоения.
- Производительность: Go предлагает отличную производительность, уделяя особое внимание эффективной компиляции и выполнению. Производительность Go сравнима с такими языками, как C и C++, но с дополнительным преимуществом в виде сборки мусора и улучшенного управления памятью.
- Масштабируемость: Встроенная в Go поддержка параллелизма делает его отличным выбором для создания масштабируемых приложений, поскольку он может обрабатывать множество одновременных соединений или задач. Это преимущество по сравнению с такими языками, как Python, который имеет глобальную блокировку интерпретатора (GIL), которая может ограничить параллельность.
В последующих разделах этого руководства будет показано, как установить Golang на Ubuntu 22.04 Jammy Jellyfish или Ubuntu 20.04 Focal Fossa, используя Golang backports PPA для последних стабильных версий.
Установите Golang в Ubuntu
Установка Golang с помощью APT
В этом разделе мы проведем вас через процесс установки Golang на вашу систему Ubuntu с помощью менеджера пакетов APT. Есть два метода достижения этой цели: установка Golang с помощью стандартного репозитория Ubuntu или использование Golang-Backports PPA для более актуальной версии.
Шаг 1: Обновление системы Ubuntu
Чтобы установка прошла гладко, необходимо иметь обновленную систему. Выполните следующую команду для обновления системы Ubuntu:
1 | sudo apt update && sudo apt upgrade |
Шаг 2: Выберите метод установки
Существует два метода установки Golang на систему Ubuntu. Выберите тот, который лучше всего подходит для ваших нужд.
Метод 1: Установить Golang с помощью репозитория Ubuntu
Этот метод является самым простым способом установки Golang с помощью репозитория APT, предоставляемого Ubuntu. Чтобы установить Golang, выполните следующую команду:
1 | sudo apt install golang |
После установки вы можете проверить его, выполнив команду:
1 | go version |
Версия Golang в репозитории Ubuntu не всегда может быть последней. Если вам нужна более свежая версия, воспользуйтесь методом 2, описанным ниже.
Метод 2: Установка Golang с помощью Golang-Backports PPA
Для пользователей, предпочитающих более свежую и регулярно обновляемую версию Golang, отличным выбором будет Golang-Backports PPA. Выполните следующие шаги, чтобы установить Golang с помощью Golang-Backports PPA:
Импортируйте PPA, выполнив следующую команду:
1 | sudo add-apt-repository ppa:longsleep/golang-backports -y |
Обновите список пакетов APT, чтобы включить только что добавленный PPA:
1 | sudo apt update |
Установите Golang, используя PPA. Эта команда работает, даже если вы ранее установили более старую версию:
1 | sudo apt install golang |
Наконец, проверьте установленную версию Golang, чтобы убедиться, что она соответствует вашим требованиям:
1 | go version |
Примечание: Golang-Backports PPA включает версии 1.8, 1.9, 1.10, 1.11, 1.12, 1.13, 1.14, 1.15, 1.16, 1.17, 1.18, 1.19 и 1.20. Если вам нужна конкретная более старая версия, вы можете установить ее, указав номер версии. Например, чтобы установить Golang v1.18, выполните команду:
1 | sudo apt install golang-1.18 |
Установка Go (Golang) из исходного кода
Если вы предпочитаете устанавливать конкретную или более свежую версию Go, ручной метод - отличный выбор. В этом разделе мы расскажем вам о том, как загрузить и установить Go из исходного кода.
Шаг 1: Скачайте исходный файл Go
Сначала загрузите последнюю версию Go с официального сайта с помощью команды wget. Замените x.x.x на номер нужной версии.
Пример команды:
1 | https://go.dev/dl/go1.x.x.darwin-amd64.tar.gz |
Шаг 2: Распакуйте исходный файл Go
После загрузки Go распакуйте файл в каталог /usr/local с помощью команды tar.
1 | sudo tar -xzf go1.*.*.linux-amd64.tar.gz -C /usr/local/ |
Шаг 3: Обновите переменную PATH
Обновите переменную $PATH в файле /etc/profile с помощью команд echo и tee:
1 | echo 'export PATH=$PATH:/usr/local/go/bin' | sudo tee -a /etc/profile |
Эта команда добавляет нужную строку (export PATH=$PATH:/usr/local/go/bin) в файл /etc/profile без необходимости открывать текстовый редактор. Флаг -a гарантирует, что содержимое будет добавлено в файл, а не перезаписано.
Шаг 4: Активируйте обновленную переменную PATH
Активируйте обновленную переменную окружения PATH, выполнив команду source:
1 | source /etc/profile |
Шаг 5: Проверка установки
Наконец, убедитесь, что установка прошла успешно, проверив версию Go:
1 | go version |
Эта команда отобразит текущую установленную версию Go, что свидетельствует об успешной установке.
Создание образца программы на языке Golang
В этом разделе вы узнаете, как создать простую программу на языке Golang, которая печатает "Hello, World", чтобы продемонстрировать, что ваша установка Go работает правильно.
Шаг 1: Создайте новый каталог для программы
Сначала создайте новый каталог для хранения вашего примера программы на Go:
1 | mkdir go-hello |
Шаг 2: Создайте исходный файл Go
Теперь создайте новый исходный файл Go в каталоге go-hello:
1 | nano go-hello/hello.go |
Шаг 3: Напишите программу "Hello, World".
Добавьте следующий код в файл hello.go, чтобы создать программу "Hello, World":
1 2 3 4 5 6 7 | package main import "fmt" func main() { fmt.Printf("Hello, World\n") } |
Сохраните файл, нажав (CTRL+O), а затем выйдите из редактора, нажав (CTRL+X).
Шаг 4: Создайте файл go.mod
Создайте файл go.mod в каталоге go-hello для управления зависимостями проекта Go:
1 | sudo nano go-hello/go.mod |
Добавьте следующее содержимое в файл go.mod:
1 | module example.com/mod |
Сохраните файл (CTRL+O) и выйдите из редактора (CTRL+X).
Шаг 5: Сборка и выполнение программы
Перейдите в каталог go-hello и создайте программу:
1 | cd go-hello && go build |
Наконец, запустите программу "Hello, World", выполнив следующую команду:
1 | ./mod |
Вы должны увидеть следующий результат:
1 | Hello, World |
Это подтверждает, что ваша установка Go работает, как ожидалось, и вы успешно создали и выполнили простую программу на Go.
Управление и переключение между версиями Golang
В этом разделе мы расскажем вам, как управлять и переключаться между несколькими версиями Golang, установленными в вашей системе, с помощью команды update-alternatives. Это особенно полезно, когда вам нужно работать с разными версиями Golang для различных проектов.
Шаг 1: Добавьте версии Golang в систему альтернатив
Чтобы управлять несколькими версиями Golang, вы должны сначала добавить каждую установленную версию в систему альтернатив. Предположим, у вас установлены версии Golang 1.18, 1.19 и 1.20. Вы можете добавить их с помощью следующих команд:
1 2 3 | sudo update-alternatives --install /usr/bin/go go /usr/lib/go-1.18/bin/go 118 sudo update-alternatives --install /usr/bin/go go /usr/lib/go-1.19/bin/go 119 sudo update-alternatives --install /usr/bin/go go /usr/lib/go-1.20/bin/go 120 |
В этих командах /usr/bin/go - общий симлинк, go - имя альтернативы, /usr/lib/go-1.18/bin/go, /usr/lib/go-1.19/bin/go и /usr/lib/go-1.20/bin/go - пути к соответствующим двоичным файлам Golang, а 118, 119 и 120 - номера приоритетов.
Шаг 2: Список доступных альтернатив Golang
После добавления версий Golang в систему альтернатив вы можете составить список доступных альтернатив, выполнив следующую команду:
1 | sudo update-alternatives --list go |
Эта команда отобразит доступные версии Golang и соответствующие пути к ним.
Шаг 3: Переключение между версиями Golang
Чтобы переключаться между версиями Golang, используйте опцию -config, за которой следует имя альтернативы, как показано ниже:
1 | sudo update-alternatives --config go |
Эта команда предложит вам выбрать нужную версию из доступных альтернатив. Введите соответствующее число и нажмите Enter, чтобы изменить активную версию Golang.
Пример вывода:
Шаг 4: Проверка активной версии Golang
После переключения версии необходимо проверить изменения, выполнив следующую команду:
1 | go version |
Эта команда отображает текущую активную версию Golang, гарантируя, что вы используете нужную версию для своих проектов.
Заключение
В целом, установка языка программирования Golang на Ubuntu Linux - это простой процесс, который позволяет разработчикам использовать мощь и простоту этого современного языка. Мы обсудили различные аспекты, включая обновление системы, установку Golang через репозиторий APT и Golang backports PPA, а также управление несколькими версиями Golang с помощью команды update-alternatives. Следуя этим шагам, пользователи смогут без труда установить Golang на свои системы Ubuntu Linux и начать разработку высокопроизводительных приложений.