Sobes.tech
Junior — Middle

Aký je vzťah medzi vrstvami UseCase a Repository v architektúre aplikácie?

sobes.tech AI

Odpoveď od AI

V architektúre aplikácie je vrstva UseCase zodpovedná za obchodnú logiku a koordináciu akcií, zatiaľ čo vrstva Repository sa stará o prístup k údajom (napríklad k databáze alebo sieťovým zdrojom).

Vztah medzi nimi je nasledovný:

  • UseCase volá metódy Repository na získanie alebo uloženie údajov.
  • Repository enkapsuluje detaily ukladania a načítania údajov, poskytujúc UseCase jednoduché rozhranie.

Toto rozdelenie umožňuje meniť implementáciu prístupu k údajom bez zmeny obchodnej logiky a uľahčuje testovanie.

Príklad:

class UserRepository {
    fun getUser(id: String): User { /* prístup k databáze */ }
}

class GetUserUseCase(private val userRepository: UserRepository) {
    fun execute(id: String): User {
        return userRepository.getUser(id)
    }
}