Sobes.tech
Junior — Middle

გაუზიარე შენი ბოლო პროფესიული პროექტის ან დავალების დეტალები, რომელსაც ცოტა ხნის წინ حلედე.

sobes.tech AI

პასუხი AI-სგან

Իմ վերջին նախագծում Go-ով ես զարգացրել REST API համակարգի համար։ Հիմնական խնդիրն էր ստեղծել հուսալի և մասշտաբային ծառայություն, որը թույլ կտար ստեղծել, թարմացնել և ջնջել առաջադրանքները, ինչպես նաև ֆիլտրել նրանց կարգավիճակով և առաջնահերթությամբ:

Դրա համար օգտագործեցի net/http ստանդարտ փաթեթը հարցումների մշակման համար և gorilla/mux գրադարանը երթուղիների համար։ Տվյալների պահեստավորման համար օգտագործեցի PostgreSQL և ORM GORM:

Օրինակ՝ առաջադրանքի ստեղծման handler:

func createTaskHandler(w http.ResponseWriter, r *http.Request) {
    var task Task
    err := json.NewDecoder(r.Body).Decode(&task)
    if err != nil {
        http.Error(w, "Անվավեր մուտք", http.StatusBadRequest)
        return
    }
    if err := db.Create(&task).Error; err != nil {
        http.Error(w, "Աշխատանքի ստեղծումը ձախողվեց", http.StatusInternalServerError)
        return
    }
    w.WriteHeader(http.StatusCreated)
    json.NewEncoder(w).Encode(task)
}

Նաև իրականացրեցի middleware՝ հարցումների գրանցման և սխալների կառավարման համար, ինչը բարելավեց ծառայության աջակցությունը և դեբագինգը։