So installieren Sie Go und richten eine lokale Programmierumgebung unter macOS ein

Einführung

Go ist eine Programmiersprache, die aus Frustration bei Google entstanden ist. Die Entwickler mussten ständig eine Sprache auswählen, die effizient ausgeführt wurde, deren Kompilierung jedoch viel Zeit in Anspruch nahm, oder eine Sprache auswählen, die einfach zu programmieren war, in der Produktion jedoch ineffizient lief. Go wurde so konzipiert, dass alle drei gleichzeitig verfügbar sind: schnelle Kompilierung, einfache Programmierung und effiziente Ausführung in der Produktion.

Go ist eine vielseitige Programmiersprache, die für viele verschiedene Programmierprojekte verwendet werden kann. Sie eignet sich jedoch besonders gut für Netzwerk- / verteilte Systemprogramme und hat sich den Ruf einer „Sprache der Cloud“ erarbeitet. Im Mittelpunkt steht die Unterstützung moderner Programmierer mehr mit einem starken Werkzeugsatz, der Debatten über die Formatierung beseitigt, indem das Format Teil der Sprachspezifikation wird und die Bereitstellung durch Kompilieren in einer einzelnen Binärdatei vereinfacht wird. Go ist einfach zu erlernen und mit einer sehr kleinen Anzahl von Schlüsselwörtern ausgestattet. Dies macht es zu einer großartigen Wahl für Anfänger und erfahrene Entwickler.

Dieses Tutorial führt Sie durch die Installation von Go auf Ihrem lokalen MacOS-Computer und das Einrichten eines Programmierarbeitsbereichs über die Befehlszeile.

Voraussetzungen

Sie benötigen einen MacOS-Computer mit Administratorzugriff, der mit dem Internet verbunden ist.

[[Schritt-1 - Öffnen des Terminals]] == Schritt 1 - Öffnen des Terminals

Wir werden den größten Teil unserer Installation und Einrichtung über die Befehlszeile ausführen. Dies ist eine nicht grafische Möglichkeit, mit Ihrem Computer zu interagieren. Das heißt, anstatt auf Schaltflächen zu klicken, geben Sie Text ein und erhalten auch Text-Feedback von Ihrem Computer. Die Befehlszeile, auch als Shell bezeichnet, kann Ihnen dabei helfen, viele der Aufgaben, die Sie täglich auf einem Computer ausführen, zu ändern und zu automatisieren. Sie ist ein unverzichtbares Tool für Softwareentwickler.

Das macOS-Terminal ist eine Anwendung, mit der Sie auf die Befehlszeilenschnittstelle zugreifen können. Wie bei jeder anderen Anwendung können Sie sie finden, indem Sie im Finder zum Ordner "Programme" und dann zum Ordner "Dienstprogramme" navigieren. Doppelklicken Sie von hier aus wie bei jeder anderen Anwendung auf das Terminal, um es zu öffnen. Alternativ können Sie Spotlight verwenden, indem Sie die TastenCMD undSPACEgedrückt halten, um das Terminal zu finden, indem Sie es in das angezeigte Feld eingeben.

macOS Terminal

Es müssen noch viele weitere Terminal-Befehle gelernt werden, mit denen Sie leistungsstärkere Aufgaben ausführen können. Der Artikel „https://www.digitalocean.com/community/tutorials/an-einführung-zum-linux-terminal -[Einführung in das Linux-Terminal]“ kann Sie mit dem ähnlichen Linux-Terminal besser orientieren zum macOS Terminal.

Nachdem Sie Terminal geöffnet haben, können SieXcode herunterladen und installieren, ein Paket von Entwicklertools, die Sie für die Installation von Go benötigen.

[[Schritt-2 - Installation von Xcode]] == Schritt 2 - Installation von Xcode

Xcode ist eineintegrated development environment (IDE), die aus Softwareentwicklungstools für macOS besteht. Sie können überprüfen, ob Xcode bereits installiert ist, indem Sie im Terminalfenster Folgendes eingeben:

xcode-select -p

Die folgende Ausgabe bedeutet, dass Xcode installiert ist:

Output/Library/Developer/CommandLineTools

Wenn Sie einen Fehler erhalten haben, installieren Sie in Ihrem WebbrowserXcode from the App Store und akzeptieren Sie die Standardoptionen.

Kehren Sie nach der Installation von Xcode zu Ihrem Terminal-Fenster zurück. Als Nächstes müssen Sie die separate Befehlszeilentools-App von Xcode installieren. Geben Sie dazu Folgendes ein:

xcode-select --install

Zu diesem Zeitpunkt sind Xcode und seine Befehlszeilentools-App vollständig installiert und wir sind bereit, den Paketmanager Homebrew zu installieren.

[[Schritt-3 - Installieren und Einrichten von Homebrew]] == Schritt 3 - Installieren und Einrichten von Homebrew

Das macOS-Terminal verfügt zwar über viele Funktionen von Linux-Terminals und anderen Unix-Systemen, wird jedoch nicht mit einem Paketmanager ausgeliefert, der Best Practices berücksichtigt. Apackage manager ist eine Sammlung von Softwaretools, mit denen Installationsprozesse automatisiert werden können. Dazu gehören die Erstinstallation der Software, das Aktualisieren und Konfigurieren von Software sowie das Entfernen von Software nach Bedarf. Sie bewahren die Installationen an einem zentralen Ort auf und können alle Softwarepakete auf dem System in den üblicherweise verwendeten Formaten verwalten. Homebrew bietet macOS ein kostenloses Open-Source-Softwarepaket-Verwaltungssystem, das die Installation von Software unter macOS vereinfacht.

Geben Sie Folgendes in Ihr Terminalfenster ein, um Homebrew zu installieren:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Da Homebrew mit Ruby erstellt wurde, wird der Ruby-Pfad Ihres Computers geändert. Der Befehlcurl ruft ein Skript von der angegebenen URL ab. In diesem Skript wird die Funktionsweise erläutert und der Vorgang angehalten, um Sie zur Bestätigung aufzufordern. Auf diese Weise erhalten Sie viele Rückmeldungen zu den Aktionen des Skripts auf Ihrem System und haben die Möglichkeit, den Vorgang zu überprüfen.

Wenn Sie Ihr Passwort eingeben müssen, beachten Sie, dass Ihre Tastatureingaben nicht im Terminalfenster angezeigt werden, sondern aufgezeichnet werden. Drücken Sie einfach die Tastereturn, sobald Sie Ihr Passwort eingegeben haben. Andernfalls drücken Sie den Buchstabeny für "Ja", wenn Sie aufgefordert werden, die Installation zu bestätigen.

Gehen wir die Flags durch, die dem Befehlcurlzugeordnet sind:

  • Das Flag-f oder--fail weist das Terminalfenster an, bei Serverfehlern keine HTML-Dokumentausgabe zu geben.

  • Das Flag-s oder--silent schaltetcurl stumm, sodass die Fortschrittsanzeige nicht angezeigt wird. In Kombination mit dem Flag-S oder--show-error wird sichergestellt, dasscurl zeigt eine Fehlermeldung an, wenn dies fehlschlägt.

  • Das Flag-L oder--location weistcurl an, die Anforderung an einen neuen Ort zu wiederholen, wenn der Server meldet, dass die angeforderte Seite an einen anderen Speicherort verschoben wurde.

Sobald der Installationsvorgang abgeschlossen ist, wird das Homebrew-Verzeichnis oben in die UmgebungsvariablePATHeingefügt. Dadurch wird sichergestellt, dass Homebrew-Installationen über die Tools aufgerufen werden, die macOS möglicherweise automatisch auswählt und die möglicherweise der von uns erstellten Entwicklungsumgebung widersprechen.

Sie sollten die Datei~/.bash_profile mit dem Befehlszeilentexteditornano mit dem Befehlnano erstellen oder öffnen:

nano ~/.bash_profile

Wenn die Datei im Terminalfenster geöffnet ist, schreiben Sie Folgendes:

export PATH=/usr/local/bin:$PATH

Um Ihre Änderungen zu speichern, halten Sie die TasteCTRLund den Buchstabenogedrückt und drücken Sie bei Aufforderung die TasteRETURN. Jetzt können Sie nano beenden, indem Sie die TasteCTRL und den Buchstabenx gedrückt halten.

Aktivieren Sie diese Änderungen, indem Sie im Terminal Folgendes ausführen:

source ~/.bash_profile

Sobald Sie dies getan haben, werden die Änderungen, die Sie an der UmgebungsvariablenPATHvorgenommen haben, wirksam.

Sie können sicherstellen, dass Homebrew erfolgreich installiert wurde, indem Sie Folgendes eingeben:

brew doctor

Wenn zu diesem Zeitpunkt keine Aktualisierungen erforderlich sind, lautet die Ausgabe des Terminals:

OutputYour system is ready to brew.

Andernfalls erhalten Sie möglicherweise eine Warnung, einen anderen Befehl wiebrew update auszuführen, um sicherzustellen, dass Ihre Installation von Homebrew auf dem neuesten Stand ist.

Sobald Homebrew fertig ist, können Sie Go installieren.

[[Schritt 4 - Installieren von Go]] == Schritt 4 - Installieren von Go

Mit Homebrew können Sie mit dem Befehlbrew searchnach allen verfügbaren Paketen suchen. In diesem Lernprogramm suchen Sie nach Paketen oder Modulen für Go:

brew search golang

[.note] #Note: In diesem Lernprogramm werdenbrew search go nicht verwendet, da zu viele Ergebnisse zurückgegeben werden. Dago ein so kleines Wort ist und mit vielen Paketen übereinstimmen würde, ist es üblich geworden,golang als Suchbegriff zu verwenden. Dies ist gängige Praxis, wenn Sie im Internet nach Artikeln zum Thema Go suchen. Der BegriffGolang wurde aus der Domäne für Go geboren, dhgolang.org.
#

Das Terminal gibt eine Liste aus, was Sie installieren können:

Outputgolang  golang-migrate

Go wird zu den Elementen auf der Liste gehören. Gehen Sie voran und installieren Sie es:

brew install golang

Das Terminal-Fenster gibt Ihnen Feedback zum Installationsprozess von Go. Es kann einige Minuten dauern, bis die Installation abgeschlossen ist.

Geben Sie Folgendes ein, um die installierte Go-Version zu überprüfen:

go version

Dadurch wird die aktuell installierte Go-Version ausgegeben. Dies ist standardmäßig die aktuellste und stabilste Version von Go, die verfügbar ist.

In Zukunft können Sie zum Aktualisieren von Go die folgenden Befehle ausführen, um zuerst Homebrew und dann Go zu aktualisieren. Sie müssen dies jetzt nicht tun, da Sie gerade die neueste Version installiert haben:

brew update
brew upgrade golang

brew update aktualisiert die Formeln für Homebrew selbst und stellt sicher, dass Sie über die neuesten Informationen zu den Paketen verfügen, die Sie installieren möchten. brew upgrade golang aktualisiert das Paketgolang auf die neueste Version des Pakets.

Es wird empfohlen, sicherzustellen, dass Ihre Go-Version auf dem neuesten Stand ist.

Wenn Go auf Ihrem Computer installiert ist, können Sie jetzt einen Arbeitsbereich für Ihre Go-Projekte erstellen.

[[Schritt 5 - Erstellen Ihres Go-Arbeitsbereichs]] == Schritt 5 - Erstellen Ihres Go-Arbeitsbereichs

Nachdem Sie Xcode, Homebrew und Go installiert haben, können Sie Ihren Programmierarbeitsbereich erstellen.

Der Go-Arbeitsbereich enthält im Stammverzeichnis zwei Verzeichnisse:

  • src: Das Verzeichnis, das Go-Quelldateien enthält. Eine Quelldatei ist eine Datei, die Sie mit der Programmiersprache Go schreiben. Quelldateien werden vom Go-Compiler zum Erstellen einer ausführbaren Binärdatei verwendet.

  • bin: Das Verzeichnis, das ausführbare Dateien enthält, die von den Go-Tools erstellt und installiert wurden. Ausführbare Dateien sind Binärdateien, die auf Ihrem System ausgeführt werden und Aufgaben ausführen. Dies sind normalerweise die Programme, die von Ihrem Quellcode oder einem anderen heruntergeladenen Go-Quellcode kompiliert wurden.

Das Unterverzeichnissrc kann mehrere Versionskontroll-Repositorys enthalten (z. B.Git,Mercurial undBazaar). Sie sehen Verzeichnisse wiegithub.com odergolang.org, wenn Ihr Programm Bibliotheken von Drittanbietern importiert. Wenn Sie ein Code-Repository wiegithub.com verwenden, legen Sie auch Ihre Projekte und Quelldateien in diesem Verzeichnis ab. Dies ermöglicht einen kanonischen Import von Code in Ihr Projekt. Canonical-Importe sind Importe, die auf ein vollständig qualifiziertes Paket verweisen, z. B.github.com/digitalocean/godo.

So sieht ein typischer Arbeitsbereich aus:

.
├── bin
│   ├── buffalo                                      # command executable
│   ├── dlv                                          # command executable
│   └── packr                                        # command executable
└── src
    └── github.com
        └── digitalocean
            └── godo
                ├── .git                            # Git reposistory metadata
                ├── account.go                      # package source
                ├── account_test.go                 # test source
                ├── ...
                ├── timestamp.go
                ├── timestamp_test.go
                └── util
                    ├── droplet.go
                    └── droplet_test.go

Das Standardverzeichnis für den Go-Arbeitsbereich ab 1.8 ist das Ausgangsverzeichnis Ihres Benutzers mit dem Unterverzeichnisgo oder$HOME/go. Wenn Sie eine Version von Go vor 1.8 verwenden, wird empfohlen, den Speicherort von$HOME/goweiterhin für Ihren Arbeitsbereich zu verwenden.

Geben Sie den folgenden Befehl ein, um die Verzeichnisstruktur für Ihren Go-Arbeitsbereich zu erstellen:

mkdir -p $HOME/go/{bin,src}

Die Option-p weistmkdir an, alleparents im Verzeichnis zu erstellen, auch wenn sie derzeit nicht vorhanden sind. Die Verwendung von{bin,src} erstellt eine Reihe von Argumenten fürmkdir und weist es an, sowohl das Verzeichnisbin als auch das Verzeichnissrc zu erstellen.

Dadurch wird sichergestellt, dass die folgende Verzeichnisstruktur jetzt vorhanden ist:

└── $HOME
    └── go
        ├── bin
        └── src

Vor Go 1.8 musste eine lokale Umgebungsvariable namens$GOPATH festgelegt werden. Dies ist zwar nicht mehr explizit erforderlich, wird aber dennoch als bewährte Methode angesehen, da viele Tools von Drittanbietern immer noch davon abhängen, dass diese Variable festgelegt wird.

Sie können Ihre$GOPATH festlegen, indem Sie sie zu Ihren~/.bash_profile hinzufügen.

Öffnen Sie zunächst~/.bash_profile mitnano oder Ihrem bevorzugten Texteditor:

nano ~/.bash_profile

Stellen Sie Ihre$GOPATH ein, indem Sie der Datei Folgendes hinzufügen:

~/.bash_profile

export GOPATH=$HOME/go

Wenn Go Tools kompiliert und installiert, werden sie im Verzeichnis$GOPATH/binabgelegt. Der Einfachheit halber ist es üblich, das Unterverzeichnis/bindes Arbeitsbereichs zu IhrenPATH in Ihren~/.bash_profile hinzuzufügen:

~/.bash_profile

export PATH=$PATH:$GOPATH/bin

Sie sollten jetzt die folgenden Einträge in Ihren~/.bash_profile haben:

~/.bash_profile

export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin

Auf diese Weise können Sie jetzt alle Programme ausführen, die Sie über die Go-Tools kompilieren oder herunterladen, und zwar überall auf Ihrem System.

Um Ihre Shell zu aktualisieren, geben Sie den folgenden Befehl ein, um die soeben erstellten globalen Variablen zu laden:

. ~/.bash_profile

Sie können überprüfen, ob Ihre$PATH aktualisiert wurden, indem Sie den Befehlecho verwenden und die Ausgabe überprüfen:

echo $PATH

Sie sollten Ihre$GOPATH/bin sehen, die in Ihrem Home-Verzeichnis angezeigt werden. Wenn Sie alssammy angemeldet wären, würden Sie/Users/sammy/go/bin im Pfad sehen.

Output/Users/sammy/go/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

Nachdem Sie das Stammverzeichnis des Arbeitsbereichs erstellt und die Umgebungsvariable$GOPATHfestgelegt haben, erstellen Sie Ihre zukünftigen Projekte mit der folgenden Verzeichnisstruktur. In diesem Beispiel wird davon ausgegangen, dass Siegithub.com als Repository verwenden:

$GOPATH/src/github.com/username/project

Wenn Sie am Projekthttps://github.com/digitalocean/godoarbeiten würden, würden Sie es in das folgende Verzeichnis stellen:

$GOPATH/src/github.com/digitalocean/godo

Wenn Sie Ihre Projekte auf diese Weise strukturieren, werden Projekte mit dem Toolgo getverfügbar. Dies wird später auch die Lesbarkeit verbessern.

Sie können dies überprüfen, indem Sie den Befehlgo get verwenden, um die Bibliothekgodoabzurufen:

go get github.com/digitalocean/godo

Wir können sehen, dass dasgodo-Paket erfolgreich heruntergeladen wurde, indem wir das Verzeichnis auflisten:

ls -l $GOPATH/src/github.com/digitalocean/godo

Sie erhalten eine Ausgabe ähnlich der folgenden:

Output-rw-r--r--  1 sammy  staff   2892 Apr  5 15:56 CHANGELOG.md
-rw-r--r--  1 sammy  staff   1851 Apr  5 15:56 CONTRIBUTING.md
.
.
.
-rw-r--r--  1 sammy  staff   4893 Apr  5 15:56 vpcs.go
-rw-r--r--  1 sammy  staff   4091 Apr  5 15:56 vpcs_test.go

In diesem Schritt haben Sie einen Go-Arbeitsbereich erstellt und die erforderlichen Umgebungsvariablen konfiguriert. Im nächsten Schritt testen Sie den Arbeitsbereich mit etwas Code.

[[Schritt-6 - Erstellen eines einfachen Programms]] == Schritt 6 - Erstellen eines einfachen Programms

Nachdem Sie Ihren Go-Arbeitsbereich eingerichtet haben, können Sie ein einfaches "Hello, World!" - Programm erstellen. Dies stellt sicher, dass Ihr Arbeitsbereich funktioniert, und bietet Ihnen die Möglichkeit, sich mit Go vertraut zu machen.

Da Sie eine einzelne Go-Quelldatei und kein tatsächliches Projekt erstellen, müssen Sie sich hierfür nicht in Ihrem Arbeitsbereich befinden.

Öffnen Sie in Ihrem Home-Verzeichnis einen Befehlszeilentexteditor, z. B.nano, und erstellen Sie eine neue Datei:

nano hello.go

Sobald die Textdatei in Terminal geöffnet ist, geben Sie Ihr Programm ein:

package main

import "fmt"

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

Beenden Sie nano, indem Sie die Tastencontrol undx eingeben. Wenn Sie zum Speichern der Datei aufgefordert werden, drücken Siey.

Dieser Code verwendet das Paketfmt und ruft die FunktionPrintln mitHello, World! als Argument auf. Dadurch wird die PhraseHello, World! beim Ausführen des Programms auf dem Terminal ausgedruckt.

Wenn Sienano verlassen und zu Ihrer Shell zurückkehren, führen Sie das folgende Programm aus:

go run hello.go

Das soeben erstellte Programmhello.go bewirkt, dass Terminal die folgende Ausgabe erzeugt:

OutputHello, World!

In diesem Schritt haben Sie mit einem Basisprogramm überprüft, ob Ihr Go-Arbeitsbereich ordnungsgemäß konfiguriert ist.

Fazit

Herzliche Glückwünsche! Zu diesem Zeitpunkt haben Sie einen Arbeitsbereich für die Go-Programmierung auf Ihrem lokalen MacOS-Computer eingerichtet und können ein Codierungsprojekt starten!