
Desarrollo de CLI
Diseño de CLI, paquete flag, cobra/viper, estructuración de apps CLI, exit codes, stdin/stdout/stderr, patrones UX, testing de apps CLI
1¿Cuál es el rol principal del paquete flag en Go?
¿Cuál es el rol principal del paquete flag en Go?
Respuesta
El paquete flag proporciona una API simple para parsear los argumentos de línea de comandos. Permite definir flags con tipos predefinidos (string, int, bool, etc.) y gestiona automáticamente el parsing y la validación. Este paquete forma parte de la biblioteca estándar y es adecuado para CLI simples.
2¿Cómo definir un flag string con el paquete flag y recuperar su valor?
¿Cómo definir un flag string con el paquete flag y recuperar su valor?
Respuesta
La función flag.String retorna un puntero al valor del flag. Después de llamar a flag.Parse(), se puede acceder al valor desreferenciando el puntero. También es posible usar flag.StringVar para vincular directamente a una variable existente.
3¿Cuál es la diferencia entre flag.String y flag.StringVar?
¿Cuál es la diferencia entre flag.String y flag.StringVar?
Respuesta
flag.String aloja una nueva variable y retorna un puntero a ella, mientras que flag.StringVar vincula el flag a una variable existente pasada por dirección. StringVar es útil cuando la variable debe definirse a nivel de paquete o cuando se quiere evitar las desreferenciaciones.
¿Qué código de salida usar cuando una aplicación CLI encuentra un error de argumentos inválidos?
¿Cuál es la principal ventaja de Cobra frente al paquete flag estándar?
+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
Reflection
Gestión de memoria
Optimización del rendimiento
Generics
Go Design Patterns
Microservices
Seguridad y autenticación
Docker & Containerization
Kubernetes Basics
Go Avanzado
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