So installieren Sie Go und richten eine lokale Programmierumgebung unter Windows 10 ein

Einführung

https://golang.org [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 Funktionen 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“ erworben. Es konzentriert sich darauf, den modernen Programmierern dabei zu helfen, mehr mit einem starken Werkzeugsatz zu erreichen, Debatten über die Formatierung zu beseitigen, indem das Format Teil der Sprachspezifikation wird, und die Bereitstellung durch Kompilieren in einer einzelnen Binärdatei zu vereinfachen. Go ist einfach zu erlernen, mit einer sehr kleinen Anzahl von Schlüsselwörtern, was es zu einer großartigen Wahl für Anfänger und erfahrene Entwickler macht.

Dieses Tutorial führt Sie durch die Installation von Go auf Ihrem lokalen Windows 10-Computer und das Einrichten einer Programmierumgebung über die Befehlszeile.

Voraussetzungen

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

Schritt 1 - Öffnen und Konfigurieren von PowerShell

Sie werden den größten Teil der Installation und Einrichtung über eine Befehlszeilenschnittstelle 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.

PowerShell ist ein Programm von Microsoft, das eine Befehlszeilen-Shell-Schnittstelle bereitstellt. Administrative Aufgaben werden durch Ausführen von cmdlets (ausgesprochen command-lets) ausgeführt, bei denen es sich um spezielle Klassen des .NET -Softwareframeworks handelt, mit denen Vorgänge ausgeführt werden können. Seit August 2016 ist PowerShell plattformübergreifend für Windows- und UNIX-Systeme (einschließlich Mac und Linux) verfügbar.

Um Windows PowerShell zu finden, können Sie mit der rechten Maustaste auf das Menüsymbol * Start * in der unteren linken Ecke Ihres Bildschirms klicken. Wenn das Menü angezeigt wird, klicken Sie auf "Suchen" und geben Sie "+ PowerShell" in die Suchleiste ein. Wenn Ihnen Optionen angezeigt werden, klicken Sie in der Desktop-App mit der rechten Maustaste auf * Windows PowerShell *. Für die Zwecke dieses Tutorials wählen Sie * Als Administrator ausführen *. Wenn Sie zu einem Dialogfeld aufgefordert werden, in dem Sie gefragt werden, * ob diese App Änderungen an Ihrem PC vornehmen darf? * Klicken Sie auf * Ja *.

Anschließend wird eine textbasierte Benutzeroberfläche mit einer Wortfolge angezeigt, die wie folgt aussieht:

Wechseln Sie aus dem Systemordner, indem Sie den folgenden Befehl eingeben:

cd ~

Sie befinden sich dann in einem Ausgangsverzeichnis wie "+ PS C: \ Users \ +".

Um mit dem Installationsprozess fortzufahren, müssen Sie zunächst Berechtigungen über PowerShell einrichten. Standardmäßig für die Ausführung im sichersten Modus konfiguriert, gibt es einige Berechtigungsstufen, die Sie als Administrator einrichten können:

  • * Eingeschränkt * ist die Standardausführungsrichtlinie. In diesem Modus können Sie keine Skripts ausführen, und PowerShell funktioniert nur als interaktive Shell.

  • Mit * AllSigned * können Sie alle Skripts und Konfigurationsdateien ausführen, die von einem vertrauenswürdigen Herausgeber signiert wurden. Dies bedeutet, dass Sie Ihren Computer möglicherweise öffnen können, um das Risiko zu riskieren, dass böswillige Skripts ausgeführt werden, die von einem vertrauenswürdigen Herausgeber signiert wurden.

  • Mit * RemoteSigned * können Sie Skripte und Konfigurationsdateien ausführen, die von vertrauenswürdigen Herausgebern aus dem Internet heruntergeladen wurden, und Ihren Computer erneut für Schwachstellen öffnen, wenn diese vertrauenswürdigen Skripte tatsächlich bösartig sind.

  • * Uneingeschränkt * führt alle Skripte und Konfigurationsdateien aus, die aus dem Internet heruntergeladen wurden, sobald Sie bestätigen, dass Sie verstehen, dass die Datei aus dem Internet heruntergeladen wurde. In diesem Fall ist keine digitale Signatur erforderlich, sodass Sie Ihren Computer möglicherweise für das Risiko öffnen, nicht signierte und möglicherweise böswillige Skripts auszuführen, die aus dem Internet heruntergeladen werden.

In diesem Tutorial verwenden Sie die Ausführungsrichtlinie "+ RemoteSigned ", um die Berechtigungen für den aktuellen Benutzer festzulegen. Auf diese Weise kann die PowerShell vertrauenswürdige Skripte akzeptieren, ohne die Berechtigungen so umfassend zu gestalten, wie dies mit der Berechtigung " Uneingeschränkt +" der Fall wäre. Geben Sie Folgendes in PowerShell ein:

Set-ExecutionPolicy -Scope CurrentUser

PowerShell fordert Sie dann auf, eine Ausführungsrichtlinie bereitzustellen. Geben Sie Folgendes ein, um "+ RemoteSigned +" zu verwenden:

RemoteSigned

Sobald Sie "+ ENTER " drücken, werden Sie aufgefordert, die Änderung der Ausführungsrichtlinie zu bestätigen. Geben Sie den Buchstaben " y +" ein, damit die Änderungen wirksam werden. Sie können bestätigen, dass dies funktioniert hat, indem Sie nach den aktuellen Berechtigungen auf dem Computer fragen:

Get-ExecutionPolicy -List

Sie sollten eine Ausgabe erhalten, die ungefähr so ​​aussieht:

Output        Scope ExecutionPolicy
       ----- ---------------
MachinePolicy       Undefined
  UserPolicy       Undefined
     Process       Undefined
 CurrentUser    RemoteSigned
LocalMachine       Undefined

Hiermit wird bestätigt, dass der aktuelle Benutzer vertrauenswürdige Skripts ausführen kann, die aus dem Internet heruntergeladen wurden. Sie können nun mit dem Herunterladen der Dateien fortfahren, die für die Einrichtung unserer Go-Programmierumgebung erforderlich sind.

Schritt 2 - Installation des Package Managers Chocolatey

Ein Paketmanager _ ist eine Sammlung von Softwaretools, mit denen Installationsprozesse automatisiert werden. Dies umfasst die Erstinstallation, das Upgrade und die Konfiguration der Software sowie das Entfernen der Software nach Bedarf. Sie bewahren Softwareinstallationen an einem zentralen Ort auf und können alle Softwarepakete auf dem System in den üblicherweise verwendeten Formaten verwalten.

Chocolatey ist ein Kommandozeilen-Paketmanager, der für Windows erstellt wurde und wie "+ apt-get +" unter Linux funktioniert. Chocolatey ist als Open-Source-Version erhältlich und unterstützt Sie bei der schnellen Installation von Anwendungen und Tools. Sie werden es zum Herunterladen der für Ihre Entwicklungsumgebung erforderlichen Daten verwenden.

Lesen Sie das Skript, bevor Sie es installieren, um sicherzustellen, dass Sie mit den Änderungen an Ihrem Computer zufrieden sind. Verwenden Sie dazu das .NET-Scripting-Framework, um das Chocolatey-Script im Terminalfenster herunterzuladen und anzuzeigen.

Erstellen Sie zunächst ein WebClient-Objekt mit dem Namen "+ $ script +", das die Einstellungen für die Internetverbindung mit Internet Explorer gemeinsam nutzt:

$script = New-Object Net.WebClient

Schauen Sie sich die verfügbaren Optionen an, indem Sie das Objekt "+ $ script" mit "+ | " an die Klasse " Get-Member In" weiterleiten:

$script | Get-Member

Dies gibt alle Mitglieder (Eigenschaften und Methoden) dieses WebClient-Objekts zurück:

Snippet of Output . . .
DownloadFileAsync         Method     void DownloadFileAsync(uri address, string fileName), void DownloadFileAsync(ur...
DownloadFileTaskAsync     Method     System.Threading.Tasks.Task DownloadFileTaskAsync(string address, string fileNa...
DownloadString            Method     string DownloadString(string address), string DownloadString(uri address) #method we will use
DownloadStringAsync       Method     void DownloadStringAsync(uri address), void DownloadStringAsync(uri address, Sy...
DownloadStringTaskAsync   Method     System.Threading.Tasks.Task[string] DownloadStringTaskAsync(string address), Sy…
. . .

Wenn Sie sich die Ausgabe ansehen, können Sie die Methode "+ DownloadString +" identifizieren, mit der das Skript und die Signatur im PowerShell-Fenster angezeigt werden. Verwenden Sie diese Methode, um das Skript zu überprüfen:

$script.DownloadString("https://chocolatey.org/install.ps1")

Installieren Sie Chocolatey nach der Überprüfung des Skripts, indem Sie Folgendes in PowerShell eingeben:

iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex

Mit dem Cmdlet "+ iwr " oder " Invoke-WebRequest " können Sie Daten aus dem Web extrahieren. Dadurch wird das Skript an " iex " oder an das Cmdlet " Invoke-Expression +" übergeben, das den Inhalt des Skripts ausführt und die Installation für den Chocolatey-Paketmanager ausführt.

Erlauben Sie PowerShell, Chocolatey zu installieren. Sobald es vollständig installiert ist, können Sie mit dem Befehl + choco + zusätzliche Tools installieren.

Wenn Sie Chocolatey zu einem späteren Zeitpunkt aktualisieren müssen, führen Sie den folgenden Befehl aus:

choco upgrade chocolatey

Wenn der Paketmanager installiert ist, können Sie den Rest dessen installieren, was Sie für die Go-Programmierumgebung benötigen.

Schritt 3 - Installieren des Texteditors Nano (optional)

In diesem Schritt installieren Sie nano, einen Texteditor, der eine Befehlszeilenschnittstelle verwendet. Mit nano können Sie Programme direkt in PowerShell schreiben. Dies ist kein obligatorischer Schritt, da Sie auch einen Texteditor mit einer grafischen Benutzeroberfläche wie Notepad verwenden können. In diesem Tutorial wird die Verwendung von Nano empfohlen, da es Ihnen dabei hilft, sich an PowerShell zu gewöhnen.

Verwenden Sie Chocolatey, um Nano zu installieren:

choco install -y nano

Das + -y + Flag bestätigt automatisch, dass Sie das Skript ausführen möchten, ohne zur Bestätigung aufgefordert zu werden.

Nach der Installation von nano können Sie mit dem Befehl + nano + neue Textdateien erstellen. Sie werden es später in diesem Tutorial verwenden, um Ihr erstes Go-Programm zu schreiben.

Schritt 4 - Go installieren

Genau wie Sie es im vorherigen Schritt mit Nano getan haben, werden Sie Chocolatey verwenden, um Go zu installieren:

choco install -y golang

PowerShell installiert nun Go und generiert während dieses Vorgangs eine Ausgabe in PowerShell. Nach Abschluss der Installation sollte die folgende Ausgabe angezeigt werden:

OutputEnvironment Vars (like PATH) have changed. Close/reopen your shell to
see the changes (or in powershell/cmd.exe just type `refreshenv`).
The install of golang was successful.
Software installed as 'msi', install location is likely default.

Chocolatey installed 1/1 packages.
See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

Nach Abschluss der Installation bestätigen Sie, dass Go installiert ist. Um die Änderungen anzuzeigen, schließen Sie PowerShell als Administrator und öffnen Sie es erneut. Überprüfen Sie dann die Version von Go, die auf Ihrem lokalen Computer verfügbar ist:

go version

Sie erhalten eine Ausgabe ähnlich der folgenden:

Outputgo version

Nach der Installation von Go können Sie einen Arbeitsbereich für Ihre Entwicklungsprojekte einrichten.

Schritt 5 - Erstellen Sie Ihren Go-Arbeitsbereich

Nachdem Sie Chocolatey, Nano 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 Unterverzeichnis + src + kann mehrere Versionskontroll-Repositorys enthalten (z. B. Git, Mercurial und http: // bazaar.canonical.com [Basar]). Sie sehen Verzeichnisse wie "+ github.com " oder " golang.org ", wenn Ihr Programm Bibliotheken von Drittanbietern importiert. Wenn Sie ein Code-Repository wie " github.com " verwenden, werden auch Ihre Projekte und Quelldateien in diesem Verzeichnis abgelegt. 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 repository 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 Version 1.8 ist das Ausgangsverzeichnis Ihres Benutzers mit einem Unterverzeichnis "+ go " oder " $ HOME / go ". Wenn Sie eine frühere Version von Go als 1.8 verwenden, wird die Verwendung des Speicherorts " $ HOME / go +" für Ihren Arbeitsbereich weiterhin als bewährte Methode angesehen

Setzen Sie den folgenden Befehl ab, um zum Verzeichnis + $ HOME + zu navigieren:

cd $HOME

Erstellen Sie als Nächstes die Verzeichnisstruktur für Ihren Go-Arbeitsbereich:

mkdir go/bin, go/src

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

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

Vor Go 1.8 musste eine lokale Umgebungsvariable mit dem Namen "+ $ GOPATH +" festgelegt werden. Dies ist zwar nicht mehr ausdrücklich erforderlich, wird jedoch weiterhin als bewährte Methode angesehen, da viele Tools von Drittanbietern weiterhin davon abhängen, dass diese Variable festgelegt wird.

Da Sie Chocolatey für die Installation verwendet haben, sollte diese Umgebungsvariable bereits festgelegt sein. Sie können dies mit dem folgenden Befehl überprüfen:

$env:GOPATH

Sie sollten die folgende Ausgabe sehen, mit Ihrem Benutzernamen anstelle von "+ sammy +":

OutputC:\Users\\go

Wenn Go Tools kompiliert und installiert, werden sie in das Verzeichnis + $ GOPATH / bin + gestellt. Der Einfachheit halber wird häufig das Unterverzeichnis "+ bin" für den Arbeitsbereich zu Ihrem "+ $ PATH" hinzugefügt. Sie können dies mit dem Befehl "+ setx +" in PowerShell tun:

setx PATH "$($env: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.

Nachdem Sie das Stammverzeichnis des Arbeitsbereichs erstellt und die Umgebungsvariable "+ $ GOPATH +" festgelegt haben, erstellen Sie Ihre zukünftigen Projekte mit der folgenden Verzeichnisstruktur. In diesem Beispiel wird davon ausgegangen, dass Sie https://www.github.com [github.com] als Repository verwenden:

$GOPATH/src///

Wenn Sie am Projekt https://github.com/digitalocean/godo gearbeitet haben, haben Sie es in das folgende Verzeichnis gestellt:

$GOPATH/src///

Wenn Sie Ihre Projekte auf diese Weise strukturieren, werden Projekte mit dem Tool + go get + verfügbar. Dies wird später auch die Lesbarkeit verbessern.

Sie können dies überprüfen, indem Sie den Befehl + go get + verwenden, um die Bibliothek + godo + abzurufen:

go get github.com/digitalocean/godo

Sie können sehen, dass das Paket + godo + erfolgreich heruntergeladen wurde, indem Sie das Verzeichnis auflisten:

ls $env:GOPATH/src/github.com/digitalocean/godo

Sie erhalten eine Ausgabe ähnlich der folgenden:

Output    Directory: C:\Users\sammy\go\src\github.com\digitalocean\godo


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        4/10/2019   2:59 PM                util
-a----        4/10/2019   2:59 PM              9 .gitignore
-a----        4/10/2019   2:59 PM             69 .travis.yml
-a----        4/10/2019   2:59 PM           1592 account.go
-a----        4/10/2019   2:59 PM           1679 account_test.go
-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
.
.
.
-a----        4/10/2019   2:59 PM           5076 vpcs.go
-a----        4/10/2019   2:59 PM           4309 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 - Ein einfaches Programm erstellen

Nachdem Sie den Go-Arbeitsbereich eingerichtet haben, erstellen Sie ein einfaches „Hello, World!“ - Programm. Dies stellt sicher, dass Ihr Arbeitsbereich ordnungsgemäß konfiguriert ist, 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 Ausgangsverzeichnis einen Befehlszeilentexteditor, z. B. nano, und erstellen Sie eine neue Datei:

nano hello.go

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

hallo.go

package main

import "fmt"

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

Beenden Sie "+ nano", indem Sie die Tasten "+ CTRL" und "+ X" drücken. Wenn Sie aufgefordert werden, die Datei zu speichern, drücken Sie + Y + und dann + ENTER +.

Dieser Code verwendet das Paket "+ fmt " und ruft die Funktion " Println " mit " Hello, World! " Als Argument auf. Dadurch wird die Phrase " Hello, World! +" Beim Ausführen des Programms auf dem Terminal ausgedruckt.

Sobald Sie + nano + verlassen und zu Ihrer Shell zurückkehren, führen Sie das Programm aus:

go run hello.go

Das soeben erstellte Programm hello.go sollte PowerShell veranlassen, die folgende Ausgabe zu erzeugen:

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 Windows-Computer eingerichtet und können ein Codierungsprojekt starten!