Junior — Middle
Condividi i dettagli del tuo ultimo progetto professionale o compito che hai risolto di recente.
sobes.tech AI
Risposta dell'AI
Nel mio ultimo progetto in Go, ho sviluppato un'API REST per un sistema di gestione delle attività. Il compito principale era creare un servizio affidabile e scalabile che permettesse di creare, aggiornare ed eliminare le attività, nonché di filtrarle per stato e priorità.
Per fare ciò, ho utilizzato il pacchetto standard net/http per gestire le richieste, e la libreria gorilla/mux per il routing. Come storage dei dati, ho usato PostgreSQL con l'ORM GORM.
Esempio di un handler per creare un'attività:
func createTaskHandler(w http.ResponseWriter, r *http.Request) {
var task Task
err := json.NewDecoder(r.Body).Decode(&task)
if err != nil {
http.Error(w, "Input non valido", http.StatusBadRequest)
return
}
if err := db.Create(&task).Error; err != nil {
http.Error(w, "Impossibile creare il task", http.StatusInternalServerError)
return
}
w.WriteHeader(http.StatusCreated)
json.NewEncoder(w).Encode(task)
}
Ho anche implementato middleware per il logging delle richieste e la gestione degli errori, migliorando così il supporto e il debug del servizio.