Pular para o conteúdo principal

Questão de Arquitetura de Software — Conceitos Básicos em Arquitetura de Software — FUNDATEC 2025

Arquitetura de SoftwareConceitos Básicos em Arquitetura de Software
Código
qg474896
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2025
Nível
Superior
Cargo
Analista em Computação / Ênfase em Programação de Sistemas na Tecnologia JAVA
REST é um estilo de arquitetura baseado em um conjunto de princípios que descrevem a forma como os recursos de rede são definidos e endereçados. São princípios da arquitetura REST:
  1. AArmazenamento em cache, flexibilidade e sistema em camadas.
  2. BArmazenamento em cache, ausência de estado e interface uniforme.
  3. CAusência de estado, escalabilidade e interface uniforme.
  4. DDesacoplamento cliente-servidor, escalabilidade e sistema em camadas.
  5. EDesacoplamento cliente-servidor, escalabilidade e flexibilidade.
Revelar gabarito e comentário

GabaritoB — Armazenamento em cache, ausência de estado e interface uniforme.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Princípios da arquitetura REST

Gabarito: letra B. A arquitetura REST (Representational State Transfer), definida por Roy Fielding em 2000, baseia-se em um conjunto de restrições que orientam a criação de serviços Web interoperáveis. Os princípios fundamentais incluem: ausência de estado (stateless), interface uniforme e armazenamento em cache (cacheability). O contexto descreve que sistemas RESTful utilizam "um conjunto uniforme e predefinido de operações sem estado" e buscam desempenho por meio de reutilização de componentes, o que remete diretamente a esses três princípios.

A banca cobra o conhecimento dos princípios clássicos do REST. É essencial distinguir os princípios (restrições) dos benefícios ou consequências (como escalabilidade e flexibilidade), que não fazem parte da lista original.

1Ausência de estado (stateless)
2Interface uniforme
3Armazenamento em cache (cacheability)
4Cliente-servidor (desacoplamento)
5Sistema em camadas
6Código sob demanda (opcional)
7Benefícios (não são princípios)
Escalabilidade
Flexibilidade
Princípios REST (Fielding)
LEVELsoulevel.com.br
Princípios REST (Fielding): Ausência de estado (stateless); Interface uniforme; Armazenamento em cache (cacheability); Cliente-servidor (desacoplamento); Sistema em camadas; Código sob demanda (opcional); Benefícios (não são princípios) (Escalabilidade, Flexibilidade)

Alternativa A — ❌ Incorreta

Apresenta "flexibilidade" como princípio, mas flexibilidade é uma consequência da arquitetura, não uma restrição. Além disso, faltam "ausência de estado" e "interface uniforme", que são princípios centrais.

Alternativa B — ✅ Correta ⟵ GABARITO

Lista corretamente três princípios fundamentais: armazenamento em cache, ausência de estado e interface uniforme. Essas restrições são explicitamente descritas no REST: a interface uniforme simplifica a interação com recursos, a ausência de estado torna cada requisição independente, e o uso de cache melhora a eficiência.

Alternativa C — ❌ Incorreta

Substitui "armazenamento em cache" por "escalabilidade". Escalabilidade é um benefício obtido com a aplicação correta dos princípios, mas não é um princípio em si. Faltam também o princípio de cache.

Alternativa D — ❌ Incorreta

Inclui "desacoplamento cliente-servidor" (que é um princípio, sim), mas troca "ausência de estado" e "interface uniforme" por "escalabilidade" e "sistema em camadas". Embora sistema em camadas seja um princípio REST, a combinação apresentada não corresponde aos três mais característicos, e falta a interface uniforme.

Alternativa E — ❌ Incorreta

Apresenta apenas "desacoplamento cliente-servidor" como princípio correto, enquanto "escalabilidade" e "flexibilidade" não são princípios. Faltam a interface uniforme e a ausência de estado, que são essenciais.

PEGA ESSA DICA!

Para memorizar os princípios REST, lembre-se do acrônimo CISCU: Cliente-servidor, Interface uniforme, Stateless, Cache, Uso de camadas (layered system) e, opcionalmente, Código sob demanda (code on demand). Na prova, desconfie sempre que algum "benefício" como escalabilidade ou flexibilidade for listado como princípio – eles não são restrições arquiteturais.

Gabarito: letra B

Link permanente: /questoes/qg474896