← Questões de Engenharia de Software

Engenharia de Software · FGV · 2021

Questão comentada de Engenharia de Software

Joana é a arquiteta de software da equipe de desenvolvimento de sistemas (EDS) de um tribunal e definiu a utilização do REST (REpresentational State Transfer) como estilo arquitetural para a API (Application Programming Interface) que será consumida por aplicações distintas disponibilizadas via Internet. Para atender ao estilo arquitetural definido por Joana, os desenvolvedores devem criar endpoints capazes de:

Gabarito: A

Em REST, a ideia central é simples: cada requisição deve trazer tudo o que o servidor precisa para entendê-la e processá-la, sem depender de estado salvo de chamadas anteriores. Isso é o famoso princípio de statelessness, ou seja, o servidor não guarda o contexto da sessão do cliente entre uma chamada e outra. Em prova, quando aparecer REST, pense logo em independência entre requisições, uso de HTTP e foco em recursos, não em sessões longas ou protocolos como WSDL. Por isso, a alternativa correta é a A. Se o endpoint recebe uma requisição com todas as informações necessárias, ele segue bem o estilo REST, porque a comunicação fica desacoplada e escalável. Cada chamada já “se vira sozinha”, o que facilita distribuição, balanceamento e manutenção. As outras alternativas misturam REST com características de outras abordagens. WSDL é típico de serviços SOAP, não de REST. Manter dados de sessão no servidor também foge da lógica REST. E otimização por cache pode existir em REST, mas não é a essência cobrada aqui, além de a redação da alternativa D ficar inadequada ao tratar busca de dados como algo que o servidor deve fazer “primeiro no cache” como regra arquitetural. Em concursos, a FGV gosta bastante de testar essa diferença entre REST e SOAP. Se você lembrar que REST trabalha com recursos via HTTP e com requisições sem estado, já mata boa parte das pegadinhas.

Continue treinando

Questões relacionadas