
Reflection
paquete reflect, inspección de tipos, manipulación de valores, struct tags, casos de uso, rendimiento
1¿Qué es el paquete reflect en Go?
¿Qué es el paquete reflect en Go?
Respuesta
El paquete reflect permite inspeccionar y manipular tipos y valores en tiempo de ejecución (runtime). Se usa para implementar bibliotecas genéricas (marshaling JSON, ORM), pero su uso directo en el código de aplicación se desaconseja porque sacrifica la seguridad de tipos y el rendimiento.
2¿Cómo obtener el tipo de una variable con el paquete reflect?
¿Cómo obtener el tipo de una variable con el paquete reflect?
Respuesta
La función reflect.TypeOf() devuelve un reflect.Type que representa el tipo dinámico de la interfaz pasada como argumento. Si la variable es nil, reflect.TypeOf() devuelve nil. Usar .Kind() sobre el Type devuelto permite obtener la categoría del tipo (int, string, struct, etc.).
3¿Cuál es la diferencia entre reflect.Type y reflect.Value?
¿Cuál es la diferencia entre reflect.Type y reflect.Value?
Respuesta
reflect.Type representa los metadatos del tipo (nombre, kind, métodos, campos) y se obtiene mediante reflect.TypeOf(). reflect.Value representa el valor concreto y permite leerlo o modificarlo mediante reflect.ValueOf(). Ambos son complementarios: Type describe 'qué' y Value contiene 'el dato'.
¿Cómo modificar el valor de una variable mediante reflection?
¿Qué es un reflect.Kind?
+17 preguntas de entrevista
Otros temas de entrevista Go
Fundamentos de Go
Estructuras de datos en Go
Interfaces en Go
Manejo de errores
Goroutines básicas
Channels
Go Modules
Servidor HTTP
Cliente HTTP
Codificación JSON
Database/SQL
Paquete context
Testing
Patrones de concurrencia
Primitivas de sincronización
Frameworks web de Go
Diseño de API REST
gRPC
Gestión de memoria
Optimización del rendimiento
Generics
Go Design Patterns
Microservices
Seguridad y autenticación
Docker & Containerization
Kubernetes Basics
Go Avanzado
Desarrollo de CLI
Domina Go para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis