Questões de Concurso Público MPE-ES 2026 para Agente Técnico - Desenvolvedor
Foram encontradas 10 questões
Por meio de conceitos como Inversão de Controle (IoC) e Injeção de Dependências (DI), o Spring promove o baixo acoplamento entre componentes, enquanto o Spring Boot simplifica a configuração e a inicialização de projetos por meio de convenções e autoconfiguração.
Considere o seguinte trecho de código utilizando Spring Boot:
@RestController @RequestMapping("/produtos") public class ProdutoController {
@Autowired private ProdutoService produtoService;
@GetMapping("/{id}") public ResponseEntity<Produto> buscarPorId(@PathVariable Long id) { Produto produto = produtoService.buscarPorId(id); return ResponseEntity.ok(produto); }
@PostMapping public ResponseEntity<Produto> salvar(@RequestBody Produto produto) { Produto salvo = produtoService.salvar(produto); return ResponseEntity.status(HttpStatus.CREATED).body(salvo); } }
Sobre o código apresentado, considerando os conceitos do Spring Framework e o comportamento padrão do Spring Boot, assinale a afirmativa correta.
Como consequência, regras semelhantes começaram a ser repetidas em diferentes controladores, e mudanças em uma mesma política funcional passaram a exigir alterações em vários pontos do sistema. Em uma revisão arquitetural, decidiu-se promover uma refatoração para reduzir esse problema, mantendo a separação de responsabilidades e favorecendo a reusabilidade.
De acordo com o modelo MVC, assinale a opção que apresenta a medida mais adequada.
Com base nesse cenário, avalie as afirmativas a seguir.
I. A coexistência, no mesmo ambiente, de serviços que utilizam contratos formais em XML e de APIs HTTP com JSON é compatível com um processo de transição arquitetural, não sendo suficiente, por si só, para descaracterizar uma adoção de microsserviços.
II. Em uma arquitetura de microsserviços, a divisão do sistema em vários serviços garante baixo acoplamento e independência de evolução, mesmo que todos compartilhem o mesmo banco de dados e dependam de mudanças coordenadas no esquema relacional.
III. Os microsserviços podem ser compreendidos como uma abordagem específica de arquitetura orientada a serviços, de modo que nem toda solução orientada a serviços caracteriza, necessariamente, uma arquitetura de microsserviços.
Está correto o que se afirma em
( ) Em APIs REST, a semântica do método HTTP integra o contrato da operação, de modo que a leitura de um recurso não deve ser modelada com método cujo significado indique alteração de estado.
( ) A criação de novos recursos em uma coleção pode ser realizada por meio de requisição PUT dirigida ao endpoint correspondente à coleção, com retorno de um novo identificador gerado pelo servidor.
( ) Em APIs REST, a utilização de um código HTTP uniforme para respostas de êxito e de falha não compromete a semântica da interação, desde que o corpo da mensagem descreva adequadamente o resultado da requisição.
As afirmativas são, respectivamente,
Em uma atualização do sistema provedor, a equipe pretende alterar a estrutura da mensagem de resposta, com renomeação de alguns elementos e mudança de tipos de dados, sem adotar uma estratégia de versionamento compatível, sob o argumento de que o endpoint e o protocolo de transporte permanecerão inalterados.
Com base nesse cenário, analise as afirmativas a seguir.
I. A renomeação de elementos na mensagem de resposta não compromete a compatibilidade da integração, porque os consumidores podem consultar o WSDL atualizado, que define o contrato de comunicação do serviço, e passar a interpretar os novos nomes corretamente.
II. Em arquiteturas baseadas em SOAP, a interoperabilidade entre consumidor e provedor depende também da aderência das mensagens ao contrato formal do serviço, e não apenas da possibilidade de troca de documentos XML entre as partes.
III. A manutenção do mesmo endpoint e do mesmo protocolo de transporte não é suficiente, por si só, para preservar a compatibilidade da integração, quando a resposta do serviço deixa de corresponder à estrutura contratualmente esperada pelos consumidores.
Está correto o que se afirma em
Considere que uma equipe de desenvolvimento está projetando uma API RESTful para um sistema de gerenciamento de tarefas. A API deverá permitir as operações de criação, leitura, atualização completa, atualização parcial e exclusão de tarefas. A equipe definiu o recurso tarefa e precisa mapear corretamente os métodos HTTP, as URIs e os códigos de status de resposta.
Considerando as restrições arquiteturais REST e as boas práticas de projeto de APIs RESTful, assinale a afirmativa correta.
- "usamos um diretório para que novos sistemas consigam localizar automaticamente os serviços disponíveis";
- "cada serviço expõe sua especificação em um documento que outros sistemas leem para saber como invocá-lo".
Considerando os padrões adotados em uma arquitetura SOA, as duas funcionalidades descritas são desempenhadas, respectivamente, por
Considerando as características técnicas típicas de cada componente, assinale a afirmativa correta.
• a Proposta A usa uma abordagem em que todo o processamento de regras de negócio e acesso a dados ocorre no lado do servidor, e o lado do cliente recebe apenas páginas renderizadas;
• a Proposta B adota um modelo em que parte significativa da lógica de negócio é executada diretamente no navegador do usuário, com o servidor funcionando basicamente como uma camada de persistência e serviços.
Sobre a classificação dessas propostas quanto à arquitetura de três camadas, assinale a afirmativa correta.
Devido a requisitos de segurança e experiência do usuário, a equipe de desenvolvimento precisa garantir que falhas críticas no processamento do servidor (erros da classe 5xx) não exponham informações técnicas do ambiente ou páginas padrão do servidor web.
Com base nesse contexto, avalie as afirmativas a seguir.
I. Uma possível solução é configurar o servidor web como proxy reverso para interceptar respostas de erro 5xx provenientes do backend e retornar, em seu lugar, uma resposta padronizada ao cliente.
II. O frontend pode ser o responsável por capturar o código de status da resposta HTTP e decidir a forma de apresentação da falha, garantindo que a aplicação cliente mantenha o controle do fluxo de navegação.
III. O tratamento de erros deve ser delegado integralmente ao servidor web, para que o desacoplamento entre as camadas seja preservado e o frontend permaneça agnóstico às falhas ocorridas no backend.
Está correto o que se afirma em