QuestLab Plataforma Inteligente de Questões
Banco público de questões

Questões para Concursos

Pesquise questões reais por disciplina, assunto, tópico, banca, órgão, cargo, ano e modalidade.

Questões por banca

29 bancas disponíveis. Clique para visualizar todas.

Encontre as questões que procura
Limpar filtros
165 questões encontradas

Durante o desenvolvimento de um projeto de software em uma empresa de tecnologia, foram identificados diversos problemas relacionados à falta de testes adequados. Muitas funcionalidades do software estavam com bugs, o que gerou retrabalho e atrasos na entrega do projeto. Para resolver esses problemas, a equipe responsável decidiu adotar a prática de Desenvolvimento Orientado por Testes (Test-Driven Development—TDD). Quais são as etapas do ciclo de TDD que essa equipe deve seguir para garantir a implementação correta das funcionalidades e a redução de bugs no projeto?

A Escrever todos os testes, implementar todo o código, executar todos os testes e, depois, corrigir o código a partir do relatório de falhas.
B Escrever todos os testes, garantir que todos falham, implementar todo o código, executar cada teste um a um e corrigir imediatamente o código até tudo funcionar.
C Escrever um teste, executá-lo e vê-lo falhar, implementar o código necessário para passar em todos os testes já criados, refatorar o código e, em seguida, repetir todo o processo.
D Escrever todos os testes de unidade, implementar todo o código, executar todos os testes de unidade, corrigir todos os erros encontrados nas unidades, escrever todos os testes de integração, executar todos os testes e corrigir o código a partir do relatório de falhas.
E Refatorar o código existente com foco na qualidade, escrever todos os testes para o novo código, testar todo o código e corrigi-lo a partir do relatório de falhas.

function indicou(lista, indicador) { let resposta = []; for (let i = 0; i < lista.length; i++) { let item = lista[i]; if (item[0] === indicador) { if (!resposta.includes(item[1])) { //> resposta.push(item[1]); } } } return resposta; } Que linha de código JavaScript pode ser escrita na posição de < > para garantir uma implementação correta e recursiva?" Um banco comercial possui em sua base de dados uma tabela que informa o cliente que indicou diretamente outro cliente, identificando, de forma correlata, o cliente indicador e o cliente indicado. Essa tabela contém duas colunas, cpfIndicador e cpfIndicado, que contêm, respectivamente, o CPF de quem indicou e o CPF de quem foi indicado. Considerando essa tabela, o departamento de marketing imaginou uma promoção em que o número de pontos que cada cliente faria seria igual ao número de clientes que ele trouxesse ao banco, considerando também, como indicados pelo cliente original, de forma recursiva, todos os clientes indicados por clientes que ele indicou, sucessivamente. Foi solicitado ao setor de TI que gerasse um código JavaScript para implementar essa promoção. Nesse contexto, considere o código JavaScript incompleto a seguir, do qual uma linha foi removida intencionalmente, na posição indicada com o comentário < >. function indicou(lista, indicador) { let resposta = []; for (let i = 0; i < lista.length; i++) { let item = lista[i]; if (item[0] === indicador) { if (!resposta.includes(item[1])) { //> resposta.push(item[1]); } } } return resposta; } Que linha de código JavaScript pode ser escrita na posição de < > para garantir uma implementação correta e recursiva?

A resposta = resposta.concat(indicou(lista, item[1]));
B resposta.concat(indicou(lista, item[1]));
C resposta = indicou(lista, item[1]);
D resposta.push(item[0]);
E indicou(lista, item[1]).forEach(resposta.push);

Um arquiteto de software está projetando uma solução baseada em Arquitetura Orientada a Serviços (SOA, sigla em inglês) para integrar vários sistemas de uma grande empresa. Ele explicou que, para facilitar a descoberta e a comunicação entre os serviços, será utilizado um registro de serviços. Diante desse contexto, um registro de serviços em SOA é usado para

A armazenar os dados persistentes de cada serviço.
B garantir a execução sequencial de transações entre serviços.
C garantir que todos os serviços utilizem a mesma linguagem de programação.
D monitorar a performance dos serviços em tempo real.
E registrar, descobrir e permitir o consumo dinâmico de serviços.

Um time de desenvolvimento está trabalhando em um sistema financeiro que processa transações bancárias. Para garantir que o sistema seja flexível, escalável e fácil de manter, o time decide usar padrões de projeto. Após uma análise cuidadosa de uma situação encontrada, eles escolhem como solução uma combinação de dois padrões de projeto. O primeiro padrão de projeto escolhido é usado para criar instâncias de objetos necessários para processar diferentes tipos de transações, enquanto o segundo padrão de projeto escolhido garante que o sistema possa tratar uma série de requisições de transações de forma flexível e extensível. Considerando-se o contexto descrito, quais são os dois padrões de projeto escolhidos?

A Abstract Factory e Command
B Builder e Strategy
C Factory Method e Chain of Responsibility
D Prototype e Mediator
E Singleton e Observer

Um time de desenvolvimento de software está adotando a cultura DevOps para melhorar a colaboração entre as equipes de desenvolvimento e operações. O objetivo é acelerar a entrega de software, melhorar a qualidade e aumentar a satisfação dos clientes. A equipe está implementando práticas para assegurar que o código funcione corretamente em diferentes ambientes antes de ser lançado em produção. Entre as práticas de DevOps, aquela que é específica e essencial para garantir que o código funcione de forma consistente em diferentes ambientes é conhecida como

A Integração Contínua
B Desenvolvimento Ágil
C Pipeline de CI/CD
D Monitoramento de Aplicações
E Conteinerização

Um desenvolvedor está projetando um sistema de comunicação entre serviços web e precisa escolher entre SOAP e REST. As características necessárias para o sistema incluem: • simplicidade e facilidade de uso; • uso de diferentes formatos de dados (não apenas XML); • alta performance e baixa latência; e • escalabilidade e facilidade de manutenção. Com base nesses requisitos, um argumento para a escolha correta entre SOAP e REST é que se deve usar

A REST porque ele oferece melhor suporte para transações complexas e segurança avançada, com apoio de WSDL, além de ser mais escalável e fácil de manter.
B REST porque ele é baseado em HTTP e permite a comunicação através de diferentes formatos de dados, como XML, JSON e texto simples, sendo mais simples e fácil de usar.
C SOAP porque ele é baseado em HTML5, usa comandos GET e faz transferência de dados rápida por IPv6.
D SOAP porque, por ser baseado em JSON e IPv6, é mais leve e oferece melhor performance e baixa latência em comparação com REST
E SOAP porque ele permite de forma direta o uso de diferentes formatos de dados como XML, JSON e YAML, além de ser mais simples e fácil de usar por executar com SMTP.

A Wi-Fi Alliance integrou a solução de segurança do padrão IEEE 802.11i no Wi-Fi Protected Access 2 (WPA2). Ao contrário do Wired Equivalent Privacy (WEP), que adotava um algoritmo de cifragem de fluxo, o mecanismo de confidencialidade (sigilo) do WPA2 adota um algoritmo de cifragem de bloco. O algoritmo de cifragem de bloco e o correspondente modo de operação adotados no WPA2 são, respectivamente, o

A RC4 e o ECB
B AES e o ECB
C AES e o Counter
D 3DES e o ECB
E 3DES e o Counter

A arquitetura de rede da internet permite a interconexão em nível de rede através de um mecanismo que fornece um serviço de troca de pacotes. Esse mecanismo separa as atividades de comunicação de dados das atividades específicas de cada aplicação. O encaminhamento de pacotes entre as redes lógicas do Internet Protocol (IP) é realizado por

A ponte
B roteador
C repetidor
D switch L2
E gateway de aplicação

O padrão do Internet Protocol version 6 (IPv6) define diferentes tipos de endereçamento para diferentes finalidades. O endereço link-local é um endereço unicast IPv6 que pode ser configurado automaticamente em qualquer interface de rede usando o prefixo de link-local FE80::/10 e o identificador de interface no formato modificado EUI-64 (64-bit Extended Unique Identifier). Considerando-se uma interface de rede que possui o identificador de interface IEEE 48-bit MAC com o valor FC:99:47:40:FF:10, o endereço link-local IPv6 no formato modificado EUI-64 é o

A FE80::FC99:47FF:FE40:FF10
B FE80::FE99:47FF:FE40:FF10
C FE80::40FF:10FF:FEFC:9947
D FE80::FFFE:FC99:4740:FF10
E FE80::FFFE:FE99:4740:FF10