Frontend

 0    103 fiche    nowakowskilukasz12
baixar mp3 Imprimir jogar verifique-se
 
questão język polski resposta język polski
Na czym opiera się reaktywność w Vue 3?
começar a aprender
Proxy przechwytuje operacje na obiekcie, a mechanizm track/trigger śledzi odczyty i uruchamia aktualizacje - ref() i reactive() mają różne zastosowania.
Na czym opierała się reaktywność w Vue 2?
começar a aprender
Na Object. defineProperty ustawianym per właściwość przy inicjalizacji.
Czego nie wykrywał Vue 2 bez Vue. set()?
começar a aprender
Dodania nowej właściwości do obiektu po utworzeniu komponentu.
Dlaczego ref() wymaga. value, a reactive() nie?
começar a aprender
reactive() opakowuje obiekt Proxy, ref() opakowuje dowolną wartość w obiekt z jedną właściwością. value.
Jaka jest pułapka destrukturyzacji reactive()?
começar a aprender
Traci reaktywność - kopiuje wartości jako zwykłe prymitywy.
Jak bezpiecznie zdestrukturyzować reactive() zachowując reaktywność?
começar a aprender
Przez toRefs() przed destrukturyzacją.
Kiedy computed jest lepszym wyborem niż watch?
começar a aprender
computed liczy i cache'uje wartość pochodną zależną od innych reaktywnych danych, watch służy do side effectów przy zmianie wartości, np. request HTTP, zapis do localStorage albo reakcja na zmianę parametru.
Jaki realny problem mixinów rozwiązuje Composition API?
começar a aprender
Kolizję nazw i niejasne źródło właściwości używanych w komponencie.
Co zwraca funkcja generyczna fetchResource<T>(url): Promise<ApiResponse<T>>?
começar a aprender
Odpowiedź z pełnym typowaniem data zależnym od podanego typu T.
Co robi Omit<User, 'id'>?
começar a aprender
Usuwa wskazane pole z typu.
Co robi Partial<T>?
começar a aprender
Czyni wszystkie pola typu opcjonalnymi.
Jak discriminated union pozwala TypeScriptowi zawężać typ w if?
começar a aprender
Przez wspólne pole o wartościach literalnych (discriminant), np. status.
Czym różni się interface od type w praktyce?
começar a aprender
interface wspiera declaration merging (dwie deklaracje łączą się automatycznie) i dobrze opisuje kształt obiektu, type dodatkowo opisuje union/intersection i inne typy bardziej ogólne niż sam kształt obiektu.
Kiedy koniecznie trzeba użyć interface zamiast type?
começar a aprender
Przy rozszerzaniu typu z zewnętrznej biblioteki przez augmentację.
Co włącza strictNullChecks w tsconfig?
começar a aprender
Wymóg jawnej obsługi null/undefined - bez tego można przypisać je gdziekolwiek bez ostrzeżenia.
Dlaczego strict mode boli włączyć na końcu dużego projektu?
começar a aprender
Ujawnia od razu setki miejsc, gdzie gwarancja braku null była cicho łamana.
Co to jest SPA?
começar a aprender
Single Page Application - aplikacja ładuje się raz, dalsza nawigacja bez przeładowania strony.
Czym SPA różni się od MPA pod względem SEO?
começar a aprender
MPA ma lepsze SEO domyślnie, SPA wymaga dodatkowych zabiegów.
Czym różni się CSR od SSR?
começar a aprender
CSR renderuje w przeglądarce, SSR po stronie serwera.
Co poprawia SSR względem CSR?
começar a aprender
SEO i czas do pierwszego bajtu (TTFB).
Co to jest Virtual DOM?
começar a aprender
Reprezentacja struktury UI w pamięci - framework porównuje poprzedni i nowy VDOM (diffing) i na tej podstawie wykonuje potrzebne zmiany w realnym DOM.
Co oznacza reaktywność w kontekście frontendu?
começar a aprender
Zmiana stanu danych automatycznie aktualizuje UI.
Po co znać cykl życia komponentu?
começar a aprender
Pozwala pobierać dane, czyścić zasoby i optymalizować wydajność w odpowiednim momencie.
Jaka jest kolejność podstawowych hooków cyklu życia komponentu Vue?
começar a aprender
beforeCreate, created, mounted, updated, unmounted.
Czym różnią się props od state?
começar a aprender
Props to dane przekazywane z zewnątrz, state to stan lokalny komponentu.
Co oznacza one-way data flow?
começar a aprender
Dane płyną w jednym kierunku, od rodzica do dziecka - ułatwia debugowanie.
Co to jest event bubbling?
começar a aprender
Zdarzenia propagują się od elementu docelowego w górę do rodzica.
Co to jest event delegation i po co się go stosuje?
começar a aprender
Obsługa zdarzeń na rodzicu zamiast na każdym dziecku - poprawia wydajność.
Kiedy potrzebny jest globalny store zarządzania stanem?
começar a aprender
Gdy wiele komponentów współdzieli stan i props drilling staje się problemem.
Co to jest props drilling?
começar a aprender
Przekazywanie propsów przez wiele poziomów komponentów, sygnalizujące potrzebę globalnego stanu.
Co to jest CORS?
começar a aprender
Mechanizm bezpieczeństwa przeglądarki kontrolujący zapytania cross-origin.
Jak rozwiązać problem CORS?
começar a aprender
Odpowiednie nagłówki po stronie serwera albo proxy/ta sama domena.
Czym różni się debounce od throttle?
começar a aprender
Debounce wywołuje funkcję po przerwie, throttle ogranicza częstotliwość wywołań.
Co to jest lazy loading komponentów?
começar a aprender
Ładowanie komponentów dopiero gdy są potrzebne, zmniejsza initial bundle.
Co to jest code splitting?
começar a aprender
Podział kodu JS na mniejsze paczki, poprawia czas ładowania.
Jaką rolę pełni bundler (np. Vite, Webpack)?
começar a aprender
Kompilacja, minifikacja, obsługa modułów i hot reload.
Jak sobie radzić z SEO w SPA?
começar a aprender
SSR, pre-rendering i poprawne meta tagi.
Co to jest Progressive Web App (PWA)?
começar a aprender
Aplikacja webowa działająca jak natywna - offline, powiadomienia push, instalacja.
Co obejmuje accessibility (a11y)?
começar a aprender
Dostosowanie UI dla osób z niepełnosprawnościami - klawiatura, screen readery, kontrasty.
Jakie są najczęstsze błędy frontendowe na produkcji?
começar a aprender
Brak obsługi błędów API, problemy z performance, memory leaki, race conditions.
Co jest kluczowe we współpracy backend-frontend jako fullstack developer?
começar a aprender
Jasny kontrakt API, wspólna dokumentacja, testy kontraktowe.
Na czym opiera się reaktywność w Vue 3?
começar a aprender
Proxy przechwytuje operacje na obiekcie, a mechanizm track/trigger śledzi odczyty i uruchamia aktualizacje - ref() i reactive() mają różne zastosowania.
Na czym opierała się reaktywność w Vue 2?
começar a aprender
Na Object. defineProperty ustawianym per właściwość przy inicjalizacji.
Czego nie wykrywał Vue 2 bez Vue. set()?
começar a aprender
Dodania nowej właściwości do obiektu po utworzeniu komponentu.
Dlaczego ref() wymaga. value, a reactive() nie?
começar a aprender
reactive() opakowuje obiekt Proxy, ref() opakowuje dowolną wartość w obiekt z jedną właściwością. value.
Jaka jest pułapka destrukturyzacji reactive()?
começar a aprender
Traci reaktywność - kopiuje wartości jako zwykłe prymitywy.
Jak bezpiecznie zdestrukturyzować reactive() zachowując reaktywność?
começar a aprender
Przez toRefs() przed destrukturyzacją.
Kiedy computed jest lepszym wyborem niż watch?
começar a aprender
computed liczy i cache'uje wartość pochodną zależną od innych reaktywnych danych, watch służy do side effectów przy zmianie wartości, np. request HTTP, zapis do localStorage albo reakcja na zmianę parametru.
Jaki realny problem mixinów rozwiązuje Composition API?
começar a aprender
Kolizję nazw i niejasne źródło właściwości używanych w komponencie.
Co zwraca funkcja generyczna fetchResource<T>(url): Promise<ApiResponse<T>>?
começar a aprender
Odpowiedź z pełnym typowaniem data zależnym od podanego typu T.
Co robi Omit<User, 'id'>?
começar a aprender
Usuwa wskazane pole z typu.
Co robi Partial<T>?
começar a aprender
Czyni wszystkie pola typu opcjonalnymi.
Jak discriminated union pozwala TypeScriptowi zawężać typ w if?
começar a aprender
Przez wspólne pole o wartościach literalnych (discriminant), np. status.
Czym różni się interface od type w praktyce?
começar a aprender
interface wspiera declaration merging (dwie deklaracje łączą się automatycznie) i dobrze opisuje kształt obiektu, type dodatkowo opisuje union/intersection i inne typy bardziej ogólne niż sam kształt obiektu.
Kiedy koniecznie trzeba użyć interface zamiast type?
começar a aprender
Przy rozszerzaniu typu z zewnętrznej biblioteki przez augmentację.
Co włącza strictNullChecks w tsconfig?
começar a aprender
Wymóg jawnej obsługi null/undefined - bez tego można przypisać je gdziekolwiek bez ostrzeżenia.
Dlaczego strict mode boli włączyć na końcu dużego projektu?
começar a aprender
Ujawnia od razu setki miejsc, gdzie gwarancja braku null była cicho łamana.
Co to jest SPA?
começar a aprender
Single Page Application - aplikacja ładuje się raz, dalsza nawigacja bez przeładowania strony.
Czym SPA różni się od MPA pod względem SEO?
começar a aprender
MPA ma lepsze SEO domyślnie, SPA wymaga dodatkowych zabiegów.
Czym różni się CSR od SSR?
começar a aprender
CSR renderuje w przeglądarce, SSR po stronie serwera.
Co poprawia SSR względem CSR?
começar a aprender
SEO i czas do pierwszego bajtu (TTFB).
Co to jest Virtual DOM?
começar a aprender
Reprezentacja struktury UI w pamięci - framework porównuje poprzedni i nowy VDOM (diffing) i na tej podstawie wykonuje potrzebne zmiany w realnym DOM.
Co oznacza reaktywność w kontekście frontendu?
começar a aprender
Zmiana stanu danych automatycznie aktualizuje UI.
Po co znać cykl życia komponentu?
começar a aprender
Pozwala pobierać dane, czyścić zasoby i optymalizować wydajność w odpowiednim momencie.
Jaka jest kolejność podstawowych hooków cyklu życia komponentu Vue?
começar a aprender
beforeCreate, created, mounted, updated, unmounted.
Czym różnią się props od state?
começar a aprender
Props to dane przekazywane z zewnątrz, state to stan lokalny komponentu.
Co oznacza one-way data flow?
começar a aprender
Dane płyną w jednym kierunku, od rodzica do dziecka - ułatwia debugowanie.
Co to jest event bubbling?
começar a aprender
Zdarzenia propagują się od elementu docelowego w górę do rodzica.
Co to jest event delegation i po co się go stosuje?
começar a aprender
Obsługa zdarzeń na rodzicu zamiast na każdym dziecku - poprawia wydajność.
Kiedy potrzebny jest globalny store zarządzania stanem?
começar a aprender
Gdy wiele komponentów współdzieli stan i props drilling staje się problemem.
Co to jest props drilling?
começar a aprender
Przekazywanie propsów przez wiele poziomów komponentów, sygnalizujące potrzebę globalnego stanu.
Co to jest CORS?
começar a aprender
Mechanizm bezpieczeństwa przeglądarki kontrolujący zapytania cross-origin.
Jak rozwiązać problem CORS?
começar a aprender
Odpowiednie nagłówki po stronie serwera albo proxy/ta sama domena.
Czym różni się debounce od throttle?
começar a aprender
Debounce wywołuje funkcję po przerwie, throttle ogranicza częstotliwość wywołań.
Co to jest lazy loading komponentów?
começar a aprender
Ładowanie komponentów dopiero gdy są potrzebne, zmniejsza initial bundle.
Co to jest code splitting?
começar a aprender
Podział kodu JS na mniejsze paczki, poprawia czas ładowania.
Jaką rolę pełni bundler (np. Vite, Webpack)?
começar a aprender
Kompilacja, minifikacja, obsługa modułów i hot reload.
Jak sobie radzić z SEO w SPA?
começar a aprender
SSR, pre-rendering i poprawne meta tagi.
Co to jest Progressive Web App (PWA)?
começar a aprender
Aplikacja webowa działająca jak natywna - offline, powiadomienia push, instalacja.
Co obejmuje accessibility (a11y)?
começar a aprender
Dostosowanie UI dla osób z niepełnosprawnościami - klawiatura, screen readery, kontrasty.
Jakie są najczęstsze błędy frontendowe na produkcji?
começar a aprender
Brak obsługi błędów API, problemy z performance, memory leaki, race conditions.
Co jest kluczowe we współpracy backend-frontend jako fullstack developer?
começar a aprender
Jasny kontrakt API, wspólna dokumentacja, testy kontraktowe.
Czym różni się var od let i const?
começar a aprender
var ma zasięg funkcyjny i podlega hoistingowi z inicjalizacją undefined, let/const mają zasięg blokowy i trafiają do "temporal dead zone" przed deklaracją.
Co to jest hoisting w JS?
começar a aprender
Deklaracje (var, function) są "przenoszone" na górę zasięgu podczas parsowania, dostępne przed miejscem zapisu w kodzie - ale bez przypisanej wartości.
Co to jest domknięcie (closure)?
começar a aprender
Funkcja, która zapamiętuje dostęp do zmiennych ze swojego zewnętrznego zasięgu, nawet po zakończeniu działania funkcji zewnętrznej.
Czym różni się == od === w JS?
começar a aprender
== porównuje po konwersji typów (coercion), === porównuje bez konwersji, sprawdzając też typ.
Co jest falsy w JS?
começar a aprender
false, 0, ", null, undefined, NaN - wszystko inne jest truthy, w tym pusta tablica [] i pusty obiekt {}.
Czym różni się null od undefined?
começar a aprender
undefined oznacza brak przypisanej wartości (np. niezainicjalizowana zmienna), null to świadomie przypisany "brak wartości".
Jak działa this w zwykłej funkcji a jak w arrow function?
começar a aprender
Zwykła funkcja ma this zależne od sposobu wywołania (kto woła), arrow function nie ma własnego this - dziedziczy je leksykalnie z otaczającego zasięgu.
Do czego służą call(), apply() i bind()?
começar a aprender
Pozwalają jawnie ustawić this dla funkcji - call/apply wywołują ją od razu (różnią się przekazywaniem argumentów), bind zwraca nową funkcję z na stałe związanym this.
Czym jest prototypowe dziedziczenie w JS?
começar a aprender
Obiekty mają wewnętrzne odwołanie do prototypu, z którego dziedziczą właściwości/metody - łańcuch prototypów zamiast klasycznych klas.
Czym jest Promise i jakie ma stany?
começar a aprender
Obiekt reprezentujący wynik operacji asynchronicznej - stany: pending, fulfilled, rejected.
Jak async/await upraszcza pracę z Promise?
começar a aprender
Pozwala pisać kod asynchroniczny w stylu synchronicznym - await zatrzymuje wykonanie funkcji do rozstrzygnięcia Promise, bez zagnieżdżonych. then().
Czym różni się microtask queue od macrotask queue w event loop?
começar a aprender
Microtaski (Promise. then, queueMicrotask) wykonują się w całości przed kolejnym macrotaskiem (setTimeout, event UI) - dlatego Promise "wyprzedza" setTimeout(0).
Dlaczego setTimeout(fn, 0) nie wykonuje się natychmiast?
começar a aprender
Trafia do kolejki macrotasków i czeka aż stos wywołań (call stack) się opróżni oraz wykonają się wszystkie microtaski.
Co robi operator spread (...) na tablicy/obiekcie?
começar a aprender
Rozwija elementy tablicy lub właściwości obiektu w miejscu, np. przy kopiowaniu lub łączeniu.
Czym różni się spread od rest, skoro obie używają "..."?
começar a aprender
Spread rozwija wartości (np. w wywołaniu funkcji/literale), rest zbiera wiele argumentów/elementów w jedną tablicę (np. w parametrach funkcji).
Co robi destrukturyzacja tablicy/obiektu?
começar a aprender
Wyciąga wartości do osobnych zmiennych w jednym przypisaniu, np. const {a, b} = obj albo const [x, y] = arr.
Do czego służy optional chaining (?.)?
começar a aprender
Bezpieczny dostęp do zagnieżdżonej właściwości - zwraca undefined zamiast rzucać błąd, gdy pośredni obiekt jest null/undefined.
Czym różni się nullish coalescing (?) od operatora ||
começar a aprender
?|? zwraca prawą stronę tylko gdy lewa to null/undefined, || zwraca prawą stronę dla każdej wartości falsy (np. 0 czy ").
Co robi JSON. stringify() i JSON. parse()?
começar a aprender
stringify() zamienia obiekt/wartość JS na string JSON, parse() robi odwrotnie - string JSON na obiekt/wartość JS.
Czym różni się deep copy od shallow copy obiektu?
começar a aprender
Shallow copy kopiuje tylko pierwszy poziom (zagnieżdżone obiekty nadal są współdzielone przez referencję), deep copy kopiuje rekurencyjnie wszystkie poziomy.
Co zwracają array. map(), array. filter() i array. reduce() w JS?
começar a aprender
map() nową tablicę przekształconych elementów, filter() nową tablicę elementów spełniających warunek, reduce() pojedynczą zredukowaną wartość.

Você deve entrar para postar um comentário.