Junior — Middle
Môžete vysvetliť úlohu kontrolóra v štruktúre čistej architektúry?
sobes.tech AI
Odpoveď od AI
V čistej architektúre hrá úlohu riadič ako sprostredkovateľ medzi vonkajším svetom (napríklad HTTP požiadavkami) a vnútornými vrstvami aplikácie.
Hlavné funkcie riadiča:
- Prijíma prichádzajúce požiadavky.
- Vyberá potrebné údaje z požiadavky.
- Volá príslušné prípady použitia alebo interaktory.
- Tvorí odpoveď pre klienta.
Riadič neobsahuje obchodnú logiku, iba smeruje údaje a príkazy do správnych častí systému.
Príklad v Go (zjednodušený):
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, "Používateľ nenájdený", http.StatusNotFound)
return
}
json.NewEncoder(w).Encode(user)
}
Tu riadič prijíma požiadavku, volá obchodnú logiku a vracia výsledok klientovi.