useEffect i cykl życia
useEffect to hook do synchronizacji komponentu ze światem zewnętrznym — pobieranie danych, subskrypcje, manipulacje DOM, timery. Kluczem jest zrozumienie dependency array (kiedy efekt się uruchamia) i funkcji cleanup (co robić przy odmontowaniu komponentu).