Czy CSSOM blokuje renderowanie strony? Dlaczego?
Frontend
Opisz krytyczną ścieżkę renderowania przeglądarki: od wpisania adresu URL w pasek adresu do renderowania strony. Opowiedz o DNS, TCP, HTTP, budowaniu DOM, CSSOM, Render Tree, Layout i Paint.
Czym jest reflow i repaint? Czym jest wymuszony reflow (wymuszone ponowne rysowanie)? Jak można zoptymalizować renderowanie, aby zmniejszyć liczbę wymuszonych ponownych rysowań?
W jakich przypadkach dochodzi do ponownego renderowania (re-render) komponentu w React? Opowiedz o reconciliation (uzgodnieniu).
Jak sprawić, aby funkcja makeBook zwracała oczekiwane wartości 0 i 5 zamiast dwóch dziesiątek?
Jak można rozwiązać zadanie, które rozwiązuje dziedziczenie, w inny sposób? Czym jest kompozycja w kontekście TypeScript i React?
Zobacz funkcję makeBook. Określ, co zostanie wyświetlone w konsoli na liniach 20-21 (dwie zakomentowane linie). Wyjaśnij zachowanie funkcji.
Jakie wzorce projektowe i zasady jakości kodu stosujesz podczas tworzenia w React/TypeScript? Jak stosujesz zasady SOLID w rozwoju frontend?
Zrefaktoryzuj komponent, który renderuje losową liczbę (z Promise) i pozycję przewijania. Znajdź problemy i je napraw.
Czym są HOC (Wyższe Komponenty Rzędu)? Do czego służą? Podaj przykłady użycia HOC w React.
Do czego służą generyki w TypeScript? Jak ograniczyć generyk do określonych typów? Czym jest zawężanie typu i jak jest realizowane?
Jak działa Virtual DOM w React? Jak React określa kolejność wykonywania operacji podczas ponownego renderowania? Opowiedz o React Fiber i planifierze (scheduler).
Czym jest CORS? Jak działa? Jaka jest różnica między prostymi żądaniami (GET, POST) a żądaniami preflight (OPTIONS)? Na co patrzy CORS podczas wysyłania żądania?