Sobes.tech
Junior — Middle

Имали ли сте опит с използването на рефлексия в проектите си?

sobes.tech AI

Отговор от AI

Рефлексията в Go позволява на програма да изследва и променя собствената си структура по време на изпълнение. Това е полезно, когато трябва да работите с типове данни динамично, например при сериализация, десериализация или при писане на универсални функции.

Пример за използване на рефлексия за получаване на типа и стойността на променлива:

package main

import (
    "fmt"
    "reflect"
)

func main() {
    var x float64 = 3.4
    v := reflect.ValueOf(x)
    t := reflect.TypeOf(x)
    fmt.Println("Тип:", t)
    fmt.Println("Стойност:", v)
}

Рефлексията е мощна, но трябва да се използва с внимание, тъй като може да усложни кода и да намали производителността.