Quiz 08 - Boas Práticas e Validação de Dados ✅
1. Por que o backend nunca deve confiar nos dados vindos do frontend?
Para economizar bateria do servidor
Porque a requisição pode ter sido interceptada, alterada ou burlada
Porque o frontend é sempre feito por iniciantes
Porque os navegadores são lentos
2. Qual a diferença entre Validar e Sanitizar?
Validar limpa o dado, Sanitizar checa a regra
Validar checa se o dado está correto, Sanitizar "limpa" o dado de impurezas (espaços, tags HTML)
São a mesma coisa com nomes diferentes
Validar é para banco SQL, Sanitizar é para NoSQL
3. Para que servem bibliotecas como Zod ou Joi?
Para acelerar a conexão com o banco
Para definir e aplicar esquemas de validação de forma declarativa e robusta
Para desenhar gráficos no painel do administrador
Para comprimir arquivos PDF
4. O que é o princípio DRY (Don't Repeat Yourself)?
Beber água durante o código
Evitar a duplicação de lógica, transformando repetir em funções ou serviços únicos
Escrever o código o mais rápido possível
Não usar a tecla Backspace
5. O que um Middleware de Erro Global faz?
Impede que o computador trave
Captura qualquer erro não tratado e envia uma resposta padronizada ao cliente
Apaga os logs do servidor
Avisa o usuário que a internet caiu
6. Por que NÃO devemos enviar o Stack Trace (detalhes técnicos do erro) para o usuário final?
Porque gasta muitos dados de internet
Por segurança, pois revela detalhes da estrutura do banco e do código (ajuda hackers)
Porque o usuário não entende inglês
Porque o Stack Trace é feio
7. Qual a vantagem de usar nomes de funções altamente descritivos?
O código fica mais colorido no editor
Melhora a legibilidade e facilita a manutenção por outros desenvolvedores (ou por você no futuro)
O compilador processa nomes longos mais rápido
Ocupa menos espaço no servidor
8. O que caracteriza um Erro 400 (Bad Request)?
O servidor parou de funcionar
O cliente enviou dados inválidos ou incompletos que o sistema não aceita
O usuário não tem permissão para acessar
A página não existe
9. O que caracteriza um Erro 500 (Internal Server Error)?
O usuário digitou a senha errada
Ocorreu uma falha inesperada na lógica ou infraestrutura do servidor
O link está quebrado
A conta do usuário foi deletada
10. Como o Clean Code ajuda na escalabilidade de um projeto?
Comprimindo o banco de dados
Mantendo o código organizado e modular, facilitando a adição de novas funcionalidades
Diminuindo o preço da hospedagem
Aumentando o número de acessos simultâneos