Sobes.tech
Middle+
20

Что такое дженерики в Go? Уже использовали?

Компании, где спрашивали
МВидеоМВидео

Ответ от нейросети

sobes.tech AI

Дженерики в Go — это механизм параметризации типов, который позволяет писать функции, структуры и интерфейсы, работающие с разными типами данных без дублирования кода. Впервые дженерики появились в Go начиная с версии 1.18.

Пример использования дженериков для функции, которая возвращает первый элемент слайса:

package main
import "fmt"

func First[T any](slice []T) T {
    return slice[0]
}

func main() {
    nums := []int{1, 2, 3}
    words := []string{"hello", "world"}

    fmt.Println(First(nums))  // 1
    fmt.Println(First(words)) // hello
}

Я использовал дженерики для написания обобщённых контейнеров и утилит, что значительно уменьшает дублирование кода и повышает его читаемость.