Sobes.tech
Junior — Middle

Dalieties ar saviem nesenākajiem profesionālā projekta vai uzdevuma detaļām.

sobes.tech AI

Atbilde no AI

Manā pēdējā projektā Go valodā es izstrādāju REST API uzdevumu pārvaldības sistēmai. Galvenais uzdevums bija izveidot uzticamu un mērogojamu pakalpojumu, kas ļautu izveidot, atjaunināt un dzēst uzdevumus, kā arī filtrēt tos pēc statusa un prioritātes.

Tam es izmantoju standarta net/http paketi pieprasījumu apstrādei un gorilla/mux bibliotēku maršrutēšanai. Datu glabāšanai es izmantoju PostgreSQL ar ORM GORM.

Piemērs, kā darbojas uzdevuma izveides handleris:

func createTaskHandler(w http.ResponseWriter, r *http.Request) {
    var task Task
    err := json.NewDecoder(r.Body).Decode(&task)
    if err != nil {
        http.Error(w, "Nederīga ievade", http.StatusBadRequest)
        return
    }
    if err := db.Create(&task).Error; err != nil {
        http.Error(w, "Neizdevās izveidot uzdevumu", http.StatusInternalServerError)
        return
    }
    w.WriteHeader(http.StatusCreated)
    json.NewEncoder(w).Encode(task)
}

Tāpat es ieviesu middleware, kas paredzēts pieprasījumu reģistrēšanai un kļūdu apstrādei, kas uzlaboja pakalpojuma atbalstu un atkļūdošanu.