Prévia do material em texto
Prova de Programação Avançada Questão 1: Qual das seguintes opções descreve corretamente o conceito de "memoization" em programação? a) Uma técnica de programação onde uma função chama a si mesma. b) Uma técnica de otimização que armazena os resultados de funções caras para reutilização posterior. c) Um padrão de design que permite a criação de uma interface única para um grupo de interfaces relacionadas. d) Uma técnica de controle de concorrência que permite múltiplas threads acessarem a mesma variável sem conflito. Questão 2: Qual é a principal vantagem do uso de índices em um banco de dados relacional? a) Reduzir o tamanho do banco de dados. b) Aumentar a segurança dos dados. c) Melhorar a performance de consultas. d) Facilitar a integração com outras bases de dados. Questão 3: O que significa "eventual consistency" em sistemas distribuídos? a) Todos os nós do sistema estão sempre consistentes. b) Os dados são eventualmente consistentes, mas não garantem consistência imediata após uma atualização. c) Os dados nunca se tornam consistentes. d) A consistência dos dados depende do tempo de execução dos processos. Questão 4: Em JavaScript, o que acontece quando você tenta acessar uma propriedade que não existe em um objeto? a) Um erro de tempo de execução é lançado. b) undefined é retornado. c) null é retornado. d) Um novo campo é criado automaticamente com o valor null. Questão 5: Qual das seguintes opções é uma vantagem do uso de arquiteturas baseadas em microserviços em relação a uma arquitetura monolítica? a) Menor consumo de memória. b) Melhor utilização de espaço em disco. c) Maior escalabilidade e flexibilidade na implementação e implantação de serviços. d) Mais fácil de implementar inicialmente.