Go

Go Design Patterns

Singleton, Factory, Builder, Strategy, Decorator, Adapter, functional options, SOLID

24 preguntas de entrevista·
Senior
1

¿Cuál es la principal ventaja del pattern Functional Options en Go?

Respuesta

El pattern Functional Options permite crear APIs configurables con parámetros opcionales sin sobrecargar los constructores. Evita tener múltiples constructores con firmas distintas y ofrece una API extensible y legible. Este pattern es idiomático en Go porque aprovecha las funciones de primera clase y evita los valores por defecto ambiguos.

2

¿Qué enfoque se recomienda para implementar el pattern Singleton en Go?

Respuesta

En Go, el pattern Singleton se implementa idealmente con sync.Once, que garantiza una inicialización thread-safe y lazy initialization. Este enfoque evita los mutex manuales y el double-checked locking, que son propensos a errores. sync.Once asegura que una función se ejecute una sola vez incluso con múltiples goroutines concurrentes.

3

¿Qué principio SOLID fomenta el uso de interfaces en Go?

Respuesta

El principio Dependency Inversion establece que los módulos de alto nivel no deben depender de módulos de bajo nivel, sino de abstracciones (interfaces). En Go, esto se traduce en aceptar interfaces y devolver tipos concretos. Este principio facilita las pruebas (mocking), el desacoplamiento y la mantenibilidad del código.

4

¿Cómo implementar el pattern Factory en Go de manera idiomática?

5

¿Cuál es el rol principal del pattern Adapter?

+21 preguntas de entrevista

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