Wzorce projektowe · Middle · Pytanie 17 z 75
Po co na frontendzie warstwa „repozytoriów” lub serwisów API zamiast bezpośredniego fetch w komponentach?
- ✓Poprawna odpowiedź: Komponenty nie znają transportu ani formatu API, co łatwo wymienić i zamockować
- 2Bez osobnej warstwy przeglądarka nie pozwala cache'ować odpowiedzi serwera
- 3To wymóg React:
fetchnie można wywoływać wewnątrz komponentów
Wyjaśnienie
Repozytorium ukrywa, skąd pochodzą dane (REST, GraphQL, cache, mocki), i zwraca obiekty domenowe. Przy zmianie endpointu edytuje się jedno miejsce, a w testach podmienia całe repozytorium. Hooki TanStack Query często wywołują właśnie takie funkcje.