Generics
Teil des Go-Kurses
Du schreibst eine Funktion, die in einem Slice von int die größte Zahl findet. Dann brauchst du eine für float64, also kopierst du sie und änderst zwei Wörter. Dann eine für string. Jetzt gibt es drei fast identische Funktionen, und wenn du in einer davon einen Fehler behebst, darfst du an die anderen beiden denken.
Den größten Teil seines Lebens hatte Go darauf keine saubere Antwort. Entweder du hast die Funktion vervielfältigt, oder du hast interface{} benutzt, das alles annahm und dafür jede Typprüfung aufgab, sodass der Compiler dir nicht mehr sagen konnte, dass du einen Slice der falschen Sorte übergeben hast. Duplizierung oder Blindflug, such dir eines aus.
Möchtest du Go Generics in einer echten Umgebung lernen?
Klick unten, hol dir eine Linux-Maschine mit fertigem Go und arbeite Generics praktisch durch, mit einem KI-Tutor, der deinen Code kennt.
Lektion startenGenericsWas du lernen wirst
- Type parameters with [T any]
- Constraints
- Comparable
- Tilde approximation ~int
- Generic Map and Filter
- When generics help, when they do not
