Sobes.tech
Junior — Middle

Temiz mimari yapısında kontrolörün rolünü açıklayabilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Temiz mimaride, denetleyici dış dünya (örneğin, HTTP istekleri) ile uygulamanın iç katmanları arasında aracı görevi görür.

Denetleyicinin temel fonksiyonları:

  • Gelen istekleri alır.
  • İstekten gerekli verileri çıkarır.
  • Uygun kullanım durumlarını veya etkileşimleri çağırır.
  • Müşteri için yanıt oluşturur.

Denetleyici iş mantığını içermez, sadece verileri ve komutları sistemin ilgili bölümlerine yönlendirir.

Go dilinde basitleştirilmiş bir örnek:

func UserController(w http.ResponseWriter, r *http.Request) {
    userID := r.URL.Query().Get("id")
    user, err := userUseCase.GetUserByID(userID)
    if err != nil {
        http.Error(w, "Kullanıcı bulunamadı", http.StatusNotFound)
        return
    }
    json.NewEncoder(w).Encode(user)
}

Burada, denetleyici isteği alır, iş mantığını çağırır ve sonucu müşteriye döner.