# 1.	Jak zdefiniujesz efekt uboczny?
Efekt uboczny to wynik operacji, która nie służy bezpośrednio realizacji głównego celu funkcji.
# 2.	Jakie problemy mogą wystąpić z powodu efektów ubocznych w komponentach Reacta?
W zależności od sytuacji efekty uboczne mogą prowadzić do powstawania pętli nieskończonych, jeśli powodująca je funkcja jest wykonywana bezpośrednio w funkcji tworzącej komponent.
# 3.	Jak działa haczyk useEffect()?
Haczyk useEffect() przyjmuje dwa argumenty: funkcję powodującą efekty uboczne i (opcjonalnie) tablicę zależności.
Funkcja powodująca efekty uboczne jest wykonywana po każdym wywołaniu funkcji tworzącej komponent. Tablica zależności powinna zawierać wszystkie wartości, zmienne lub funkcje używane w funkcji powodującej efekty uboczne. Tablica zależności określa, jak często React będzie wykonywać funkcję powodującą efekty uboczne, co dzieje się po każdej zmianie którejkolwiek z zależności.
# 4.	Jakich wartości nie należy dodawać do tablicy zależności w haczyku useEffect()?
Do tej tablicy nie należy dodawać żadnych wartości zdefiniowanych i używanych w funkcji powodującej efekty uboczne, żadnych wartości lub funkcji zewnętrznych (czyli zdefiniowanych poza funkcją tworzącą komponent), a także żadnych funkcji aktualizujących stan.
# 5.	Jaka wartość może być zwracana przez funkcję powodującą efekty uboczne? Jakiego rodzaju wartości takie funkcje nie mogą zwracać?
Opcjonalnie można zwracać funkcję porządkująca stan. Ta funkcja jest wtedy wykonywana bezpośrednio przed kolejnym uruchomieniem funkcji powodującej efekty uboczne. Natomiast nie można zwracać funkcji asynchronicznej (zwracającej obiekt Promise).
