Variablen & Datentypen ·
Kontrollstrukturen ·
Funktionen ·
Packages ·
Fehlerbehandlung ·
Zeiger
Go (Golang) ist eine statisch typisierte, kompilierte Programmiersprache von Google – bekannt für ihre Einfachheit, Performance und hervorragende Concurrency-Unterstützung. Diese Cheatsheet fasst die grundlegenden Konzepte zusammen.
Go ist statisch typisiert. Variablen können mit var oder der Kurzdeklaration := (nur innerhalb von Funktionen) deklariert werden. Der Typ wird entweder explizit angegeben oder vom Compiler inferiert.
| Typ | Beschreibung | Beispiel |
|---|---|---|
| string | Zeichenkette | "Hallo" |
| int, int8, int16, int32, int64 | Ganzzahlen | 42, -5 |
| uint, uint8, uint16, uint32, uint64 | Vorzeichenlose Ganzzahlen | 42 |
| float32, float64 | Fließkommazahlen | 3.14 |
| bool | Wahrheitswerte | true, false |
| byte | Alias für uint8 | 65 ('A') |
| rune | Alias für int32 (Unicode) | 'Ä' |
| any | Interface{} (beliebiger Typ) | 42, "text" |
:= ist die idiomatische Weise, Variablen in Go zu deklarieren. Sie kann nur innerhalb von Funktionen verwendet werden. Globale Variablen verwenden var.
Go hat eine übersichtliche Auswahl an Kontrollstrukturen. Es gibt kein while – stattdessen wird for für alle Schleifen verwendet. switch ist flexibel und benötigt kein break.
switch wird kein break benötigt – Go springt automatisch zum nächsten case nicht durch. Verwenden Sie fallthrough, um das Verhalten zu ändern.
Funktionen werden mit func deklariert. Go unterstützt mehrere Rückgabewerte – besonders nützlich für die Rückgabe von Ergebnissen und Fehlern. Die Parameterliste kann verkürzt werden, wenn benachbarte Parameter den gleichen Typ haben.
error, der bei Erfolg nil ist.
Packages sind die Einheit der Code-Organisation in Go. Jede Go-Datei beginnt mit einer package-Deklaration. main ist das ausführbare Package. Importe werden mit import eingebunden.
Fehlerbehandlung in Go erfolgt über das error-Interface. Funktionen geben oft ein Ergebnis und einen Fehler zurück – der Fehler wird geprüft, und bei nil ist alles in Ordnung.
error zurückgeben, der direkt geprüft wird.
Zeiger speichern die Speicheradresse eines Werts. Sie ermöglichen es, Werte in Funktionen zu modifizieren, ohne Kopien zu erstellen. Der Typ *T ist ein Zeiger auf einen Wert vom Typ T.
:=
for
func
package
error
*
age := 30 ·
func add(a, b int) int { return a + b } ·
if err != nil { ... }