Blog - Konrad Kowalski (rootsher)
wpisy (112)
- seria · 7 części
Realtime w przeglądarce: od pollingu do WebTransport
Realtime to wymaganie dotyczące maksymalnego opóźnienia informacji, nie nazwa protokołu. Mechanizmy od pollingu po WebTransport, każdy z ograniczenia…
- Frontend Rendering: od server-side pages do hybrydowego renderowania13/17
Selective i progressive hydration: nie wszystko musi dostać CPU od razu
Hydration przestaje być jednym startup taskiem. Client CPU staje się zasobem przydzielanym według priorytetów i realnego intentu użytkownika.
- Sposoby komunikacji z backendem: od formularza HTML do GraphQL6/6
GraphQL: klient pyta o kształt danych
Odpowiedź przestaje należeć do zasobu i operacji, a zaczyna do zapytania klienta. Elastyczność płaci się przewidywalnością wykonania i cache.
- Sposoby komunikacji z backendem: od formularza HTML do GraphQL5/6
RPC: kiedy API modeluje operacje zamiast zasobów
RPC zaczyna od operacji, nie od zasobu. Intencja staje się jawna, ale semantyka przenosi się z HTTP do kontraktu aplikacji.
- Frontend Rendering: od server-side pages do hybrydowego renderowania12/17
Edge rendering: renderowanie bliżej użytkownika
Przesunięcie compute bliżej użytkownika ma sens tylko wtedy, gdy dane idą razem z nim. Inaczej skracamy jeden hop i wydłużamy resztę.
- Sposoby komunikacji z backendem: od formularza HTML do GraphQL4/6
REST: zasoby, reprezentacje i semantyka HTTP
REST to nie „JSON i endpointy”. To zasoby identyfikowane przez URI, reprezentacje oddzielone od zasobu i wykorzystanie znaczenia metod HTTP.
- Sposoby komunikacji z backendem: od formularza HTML do GraphQL3/6
Fetch API: współczesny interfejs do HTTP w przeglądarce
fetch nie zmienił modelu komunikacji, tylko interfejs. Request i Response są obiektami, body jest strumieniem, a 404 nie jest błędem.
- Sposoby komunikacji z backendem: od formularza HTML do GraphQL2/6
AJAX: kiedy request przestał oznaczać przeładowanie strony
XHR nie zmienił protokołu, tylko czytelnika odpowiedzi. Status, nagłówki i granica origin przestały być sprawą przeglądarki, a stały się sprawą aplikacji.
- Frontend Rendering: od server-side pages do hybrydowego renderowania11/17
Partial Prerendering: jedna strona, kilka momentów renderowania
Jednostką decyzji przestaje być route. Statyczny shell powstaje wcześniej, dynamiczne fragmenty dochodzą przy requeście albo przez stream.
- Sposoby komunikacji z backendem: od formularza HTML do GraphQL1/6
HTML Forms: komunikacja z backendem bez JavaScriptu
Formularz nie jest helperem do API. Przeglądarka sama serializuje kontrolki, buduje request i traktuje odpowiedź jako nowy dokument.