Go Home Page
Die Programmiersprache Go

Tutorial: Get started with Go — Deutsche Übersetzung

Das Original:
https://golang.org/doc/tutorial/getting-started
Version of February 25, 2021
Diese Übersetzung:
https://bitloeffel.de/DOC/golang/getting-started_20210817_de.html
Stand: 04.08.2021
© 2021 Hans-Werner Heinzen @ Bitloeffel.de
Die Nutzung dieses Werks ist unter den Bedingungen der "Creative Commons Attribution 3.0"-Lizenz erlaubt.
Für Fachbegriffe und ähnliches gibt es hier noch eine Wörterliste.

Übung: Erste Schritte mit Go

Mit dieser Übung bekommen Sie eine kurze Einführung in das Programmieren mit Go. Dabei werden Sie:

Hinweis: Weitere Übungen finden Sie hier.

Voraussetzungen[Top]

Go installieren[Top]

Erledigen Sie die beschriebenen Arbeitsschritte in "Download and install" (de).

Kode schreiben[Top]

Wir beginnen mit "Hallo Welt".

  1. In einer Kommandozeile begeben Sie sich in ihr Home-Verzeichnis.

    Unter Linux oder Mac mit:

    cd
    

    Unter Windows mit:

    cd %HOMEPATH%
    
  2. Erstellen Sie einen Ordner für Ihren ersten Go-Quellkode.

    Etwa mit den folgenden Kommandos:

    $ mkdir hello
    $ cd hello
    
  3. Aktivieren Sie für Ihren Kode die Überwachung der Abhängigkeiten.

    Wenn Ihr Kode Pakete anderer Module importiert, so verwalten Sie diese Abhängigkeiten in dem Modul zu Ihrem eigenen Kode. Das Modul wird definiert durch eine go.mod-Datei, die wiederum die Module überwacht, welche jene anderen Pakete bereitstellen. Diese Datei begleitet Ihren Kode - auch ins Quellkode-Depot (repository).

    Zum Aktivieren der Überwachung mittels go.mod-Datei starten Sie das go mod init-Kommando mit dem Namen des Moduls, welches Ihren kode enthalten soll. Der Name ist der Modulpfad des Moduls. In den meisten Fällen wird das auch der Ort des Quellkode-Depots sein, etwa github.com/mymodule. Wenn Sie die Absicht haben, Ihr Modul anderen zur Verfügung zu stellen, dann muss der Modulpfad einen Ort bezeichnen, von dem die Go-Tools Ihr Modul kopieren kann (download).

    Für diese Übung nehmen Sie einfach example.com/hello.

    $ go mod init example.com/hello
    go: creating new go.mod: module example.com/hello
    
  4. Erzeugen Sie mit Ihrem Texteditor eine Datei hello.go, die Ihren Kode aufnehmen wird.
  5. Fügen Sie dort den folgenden Kode ein, und sichern sie die Datei.
    package main
    
    import "fmt"
    
    func main() {
        fmt.Println("Hallo Welt!")
    }
    

    Das also ist Ihr Go-Kode.

    • Sie deklarieren ein main-Paket. Ein Paket ist eine Methode, Funktionen zu gruppieren; es umfasst alle Dateien desselben Ordners.
    • Sie importieren das vielbenutzte fmt-Paket, worin sich Funktionen zum Formatieren von Text befinden, auch solche zur Ausgabe auf die Konsole. Dieses Paket gehört zur Standardbibliothek, die Sie mit der Installation von Go bekommen haben.
    • Sie implementieren eine main-Funktion, die eine Nachricht auf der Konsole ausgibt. Eine main-Funktion wird automatisch ausgeführt, wenn Sie das main-Paket ausführen.
  6. Starten Sie das Programm, dann sehen Sie den Gruß!
    $ go run .
    Hallo Welt!
    

    Das Kommando go run ist eins von vielen go-Kommandos, die Sie im Rahmen von Go benutzen werden. Mit dem folgenden erhalten Sie eine Liste der anderen:

    $ go help
    

Kode eines externen Pakets benutzen[Top]

Wenn Ihr Kode etwas tun soll, dass vielleicht ein anderer schon implementiert hat, dann können sie nach einem Paket suchen, das die von Ihnen benötigten Funktionen enthält.

  1. Machen Sie die Nachricht Ihres Programms ein bisschen interessanter mithilfe einer Funktion aus einem externen Modul.
    1. Besuchen Sie pkg.go.dev und suchen nach einem "quote"-Paket.
    2. Lokalisieren Sie das Paket rsc.io/quote in den Suchergebnissen und klicken Sie darauf (ein Paket rsc.io/quote/v3 ignorieren Sie fürs Erste).
    3. Betrachten Sie im Abschnitt Documentation unter Index die Liste der Fuktionen, die Sie von Ihrem Kode aus aufrufen können. Sie werden die Funktion Go benutzen.
    4. Beachten Sie am Seitenanfang, dass das Paket quote im Modul rsc.io/quote enthalten ist.

    Auf der Seite pkg.go.dev finden Sie veröffentlichte Module, worin Pakete Funktionen enthalten, die Sie in Ihrem Kode benutzen können. Pakete werden innerhalb von Modulen — wie rsc.io/quote — veröffentlicht, wodurch andere sie nutzen können. Module werden im Laufe der Zeit mit neueren Versionen verbessert, und Sie können Ihren Kode mit diese verbesserten Versionen aufrüsten.

  2. Importieren Sie in Ihrem Go-Kode das Paket rsc.io/quote und rufen Sie dessen Funktion Go.

    Nachdem Sie die herausgehobenen Zeilen hinzugefügt haben, sollte Ihr Kode so aussehen:

    package main
    
    import "fmt"
    
    import "rsc.io/quote"
    
    func main() {
        fmt.Println(quote.Go())
    }
    
  3. Ergänzen Sie die neue Modulvoraussetzung und die Prüfsummen.

    Das go-Kommando wird das Modul quote als Voraussetzung ergänzen und eine Datei go.sum für die Echtheitsprüfung (authentication) der Module anlegen. Mehr dazu in Module authentication using 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. Starten Sie Ihr Programm, damit Sie die Nachricht sehen können, die jetzt mit der aufgerufenen Funktion generiert wird.
    $ go run .
    Don't communicate by sharing memory, share memory by communicating.
    

    Wie Sie sehen, ruft Ihr Kode die Go-Funktion, die eine schlaue Botschaft zum Thema Nachrichtenaustausch ausgibt.

    Mit go mod tidy wurde das Modul rsc.io/quote gefunden und fernkopiert (download). Standardmäßig wird die neueste Version kopiert — hier: v1.5.2.

Mehr Kode schreiben[Top]

Mit dieser kurzen Einführung haben Sie Go installiert und einige Grundlagen gelernt. Um mit einer weiteren Übung noch ein bisschen mehr zu kodieren, schauen Sie sich doch "Create a Go module" (de) an.