Teil 1 - Die Arbeitsumgebung

Go läuft auf eigentlich jedem System, was mit ein Grund ist warum es so beliebt ist. Auch wenn die meisten mit Linux oder macOS an Go arbeiten, so ist es auch unter Windows ohne Probleme möglich.

Tools

Um mit Go zu arbeiten braucht ihr ein paar Tools auf eurem PC. Bitte beachtet, dass wir dieses Tutorial für Windows und macOS auslegen, weitere Anleitungen werden unter Umständen ergänzt.

Unabhängig davon welches System ihr nutzt, sind die Tools eigentlich gleich. Ihr braucht:

Visual Studio Code ist nur ein sehr mächtiger und angenehmer Text Editor für Entwickler. Ihr könnt auch andere wie Sublime Text verwenden, jedoch bietet vscode gute Features im Umgang mit Go und bei der Verwaltung eures Projekts. Wir haben bereits einige Editoren und IDEs getestet doch vscode ist uns geblieben. Am wichtigsten sind uns dabei die Extensions, die auch im Laufe des Tutorials hilfreich sein werden.

Oh und wer es nicht gemerkt hat, alle diese Tools sind OpenSource. Wir finden das ziemlich bemerkenswert!

Setup

Im Grunde könnt ihr alle Tools einfach über das Setup installieren. Die standardoptionen sind dabei kein Problem und auch bei Git könnt ihr diese so lassen wie sie sind.

Nur bei Go solltet ihr prüfen ob der GoPath richtig gesetzt ist. Dazu führt ihr das in eurer Konsole aus:

go env GOPATH

Als Ergebnis sollte euch der Ordner 'go' in eurem User Verzeichnis genannt werden (z.B. /home/finch/go oder C:\Users\finch\go).
Ist das nicht der Fall, so ist das Setup falsch gelaufen und ihr solltet es noch einmal versuchen.

Abschließend solltet ihr diesen Ordner auch in eurem User Verzeichnis anlegen.

mkdir go

Konfiguration

Nun seid ihr so weit Visual Studio Code zu starten. Die neuste Version bietet euch auf dem Welcome Tab einige Optionen an, wenn ihr eine Eunführung wollt klickt euch am besten durch die Quick Links rechts.

Wenn ihr bereit seid weiter zu machen, geht in der linken Leiste auf Erweiterungen/Extensions.
In der Suchleiste gebt ihr Go ein und installiert das 'Go' Paket (aktuell Version 0.6.55).

Danach werdet ihr gebeten vscode einmal zu 'reloaden'. Dabei gehen übrigens keine Daten verloren, vscode belässt alles wie es ist.

Nach dem reload könnt ihr mit Ctrl(CMD)+Shift+P das Befehlsmenü öffnen. Merkt euch diese Kombination, ihr werdet sie noch oft brauchen.
Dor gebt ihr nun "Go Install" ein und wählt den Eintrag "Go: Install Tools" aus. Der Vorgang dauert ein paar Minuten ihr könnt aber während dessen euren Projekt Ordner vorbereiten.

Ordnerstruktur

Wir haben vorhin unseren GOPATH überprüft. Dieser ist der Pfad in dem Go all seine Pakete, Daten und den Code ablegt.

Im GoPath speichert und baut ihr eure Projekte und installiert andere Pakete

Um ein Projekt anzulegen, brauchen wir zuerst einen weiteren Ordner. Wir legen diesen daher an:

mkdir go/src

In diesem Ordner bewahrt ihr all euren Go Code auf. Das Ganze nach folgender Struktur:

go/
    src/
        projektdomain/
            projekt1/
            projekt2/
        play-net.org/
            loginapi/
            httpproxy/
            rconclient/
        github.com/
            playnet-public/
                fscrub/
                gorcon-arma/
    bin/

Anhand des PlayNet Beispiels könnt ihr die Struktur nachvollziehen. Wenn ihr fremde Pakete in eurem Code benutzt, wird der Code durch Go genau so in eurem src Ordner angelegt.

Sobald Code compiled und installiert wird, verschiebt Go ihn in den bin Ordner. Dies gilt auch fuer Pakete die ihr ueber go get installiert. Es wird durch go get also der source code nach /src und die lokal gebaute binary nach /bin installiert.

Legt nun unter go/src folgenden Ordner an: play-net.org/gobasicstut

Dann öffnet ihr diesen mit vscode.

Wenn ihr von vscode die folgende Meldung bekommt:Dann müsst ihr euren GOPATH in den vscode Settings noch definieren. Geht dazu unter Files/VSCode>Preferences>Settings:

Ihr könnt die Settings oben durchsuchen, danach klickt ihr auf das Edit Symbol neben go.gopath. Auf der rechten Seite könnt ihr dann eure persönlichen Settings ändern. Tragt euren GoPath in den JSON String ein und bedenkt unter Windows einen backslash immer zu 'escapen' (\). Nach dem Speichern der Settings sollte vscode nun ohne Probleme mit Go arbeiten.

results matching ""

    No results matching ""