Junior — Middle
Comparta los detalles de su último proyecto profesional o tarea que resolvió recientemente.
sobes.tech AI
Respuesta de la IA
En mi último proyecto en Go, desarrollé una API REST para un sistema de gestión de tareas. La tarea principal era crear un servicio confiable y escalable que permitiera crear, actualizar y eliminar tareas, así como filtrarlas por estado y prioridad.
Para ello, utilicé el paquete estándar net/http para manejar las solicitudes, así como la biblioteca gorilla/mux para el enrutamiento. Como almacenamiento de datos, empleé PostgreSQL con el ORM GORM.
Ejemplo de un manejador para crear tareas:
func createTaskHandler(w http.ResponseWriter, r *http.Request) {
var task Task
err := json.NewDecoder(r.Body).Decode(&task)
if err != nil {
http.Error(w, "Entrada inválida", http.StatusBadRequest)
return
}
if err := db.Create(&task).Error; err != nil {
http.Error(w, "Error al crear la tarea", http.StatusInternalServerError)
return
}
w.WriteHeader(http.StatusCreated)
json.NewEncoder(w).Encode(task)
}
También implementé middleware para registrar las solicitudes y manejar errores, lo que mejoró el soporte y la depuración del servicio.