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.