Sobes.tech
Junior

Co jest przechowywane w warstwie danych?

sobes.tech AI

Odpowiedź od AI

Na warstwie danych (Data Layer) przechowywane są następujące informacje:

  • Źródła danych: Implementacje źródeł danych, takie jak:

    • Lokalne bazy danych (Room, SQLite).
    • API klientów do interakcji z usługami sieciowymi (Retrofit, Volley).
    • Przechowywanie plików.
    • SharedPreferences.
  • Repozytoria: Interfejsy i implementacje repozytoriów zapewniające zunifikowany dostęp do różnych źródeł danych. Repozytorium abstrahuje warstwę źródeł danych od logiki biznesowej.

  • Modele danych: Klasy reprezentujące strukturę danych pobranych ze źródeł danych (np. POJO, Data Classes). Zazwyczaj te modele różnią się od tych używanych na warstwie prezentacji.

  • Mapery: Funkcje lub klasy do konwersji modeli danych z jednego formatu na inny, np. z formatu odpowiedzi sieciowej na format używany przez repozytorium.

  • Logika związana z danymi: Logika biznesowa specyficzna dla pracy z danymi, taka jak cache'owanie, obsługa błędów podczas zapytań API, migracje bazy danych.

Głównym celem warstwy danych jest bycie jedynym źródłem prawdy (Single Source of Truth) dla danych w aplikacji, ukrywając szczegóły pobierania danych przed warstwami wyższymi.