Sobes.tech
Назад к вопросам
Middle+
2

Используешь ли дженерики в Go?

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

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

sobes.tech AI

Да, дженерики в Go активно использую, особенно после их появления в Go 1.18. Они позволяют писать обобщённый код, который работает с разными типами без дублирования.

Пример простой функции с дженериками для слайса:

func ReverseSlice[T any](s []T) []T {
    result := make([]T, len(s))
    for i, v := range s {
        result[len(s)-1-i] = v
    }
    return result
}

// Использование:
ints := []int{1, 2, 3}
revInts := ReverseSlice(ints)

strings := []string{"a", "b", "c"}
revStrings := ReverseSlice(strings)

Дженерики помогают создавать более универсальные библиотеки и упрощают поддержку кода, уменьшая дублирование и повышая типобезопасность.