← Questões de Engenharia de Software

Engenharia de Software · FGV · 2022

Questão comentada de Engenharia de Software

José é o arquiteto de software em uma equipe de desenvolvimento de sistemas e recebeu a demanda de projetar serviços que estarão disponíveis na API RESTful a ser utilizada por três aplicações distintas. Considerando as restrições de uma API RESTful, José deve garantir que:

Gabarito: E

Em REST, uma regra central é a statelessness, ou seja, o servidor nao deve depender de informacoes guardadas de uma requisicao anterior para processar a proxima. Cada chamada precisa levar o suficiente para ser entendida sozinha. Em outras palavras: a API nao pode “ficar lembrando” da conversa como se estivesse em um bate-papo de aplicativo de mensagem. Isso melhora escalabilidade, simplicidade e confiabilidade, porque qualquer servidor pode atender a requisicao sem depender de um estado escondido em sessao. Na pratica, autenticação, parametros, identificadores do recurso e demais dados necessarios devem acompanhar cada request. Esse e um dos principios classicos de REST descritos por Roy Fielding em sua tese de doutorado, que fundamenta a arquitetura REST. Por isso, o gabarito e a letra E: a requisicao deve conter toda a informacao necessaria para o processamento da resposta, sem considerar o estado da sessao. A ideia e evitar dependencia de contexto armazenado no servidor, mantendo a comunicacao entre cliente e API independente a cada chamada. As demais alternativas trazem elementos que nao sao exigencias de REST, como XML obrigatorio, envelopes de mensagem ou SSO como regra da arquitetura. REST pode ate coexistir com esses recursos em alguns projetos, mas eles nao sao restricoes do estilo arquitetural.

Continue treinando

Questões relacionadas