frontend
Svelte
Svelte em entrevista testa se você entende a proposta: ele é um compilador, não um runtime que faz diff de virtual DOM — a reatividade vira código imperativo em build time. Espere perguntas sobre o modelo de reatividade (atribuição, runes no Svelte 5), stores, e quando 'menos JS enviado' realmente importa.
Tópicos por senioridade
Perguntas mais cobradas
ver todas →- Médio
Svelte é compilador, não runtime de virtual DOM
Svelte gera JS imperativo em build time que toca só os nós que dependem de cada estado — sem virtual DOM nem diff em runtime. Bundle menor, menos abstração; a mágica está no compilador.
- Médio
Reatividade no Svelte: atribuição e runes
Svelte 3/4: só a ATRIBUIÇÃO a variável de componente é reativa, então `push` sozinho não invalida (`arr = [...arr, x]`). Svelte 5: runes (`$state`/`$derived`) explícitas.
- Fácil
Stores do Svelte e o `$`
Store = objeto com `subscribe` pra estado compartilhado. `$store` num componente auto-inscreve, lê o valor, re-renderiza e cancela a inscrição ao destruir.
- Fácil
Props no Svelte: `export let` x `$props()` (runes)
Svelte 3/4: `export let x` (o `export` = 'vem de fora'). Svelte 5: `let { x } = $props()` — rune explícita, alinhada ao JS normal. Runes tornam explícito o que era convenção do compilador.
- Médio
SvelteKit: `load` no servidor x universal
`+page.server.ts`: só no servidor (DB, segredos, cookies); retorno serializável. `+page.ts`: servidor no 1º load, cliente nas navegações; API pública, sem segredo, pode retornar não-serializável.
- Médio
`setContext`/`getContext` x stores no Svelte
Store: estado global/de módulo, mesmo valor pra quem importar. Context: passa algo pela árvore, só pro subtree, permite múltiplas instâncias — mas não é reativo (ponha uma store dentro se precisar).