Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — FGV 2024

ProgramaçãoLinguagens de programação
Código
fg098584
Banca
FGV
Órgão
TJ-MS
Ano
2024
Nível
Superior
Cargo
Técnico de Nível Superior - Analista de Sistemas Computacionais - Web Designer
A analista Joana está implementando um sistema observando os padrões de arquitetura de aplicações corporativas. Ela escreveu a classe J, que estabelece a comunicação entre uma instância da classe A e uma instância da classe B. As classes A e B são independentes entre si.Ao estabelecer uma comunicação entre dois objetos independentes, a classe J implementa o padrão básico:
  1. Aplugin;
  2. Bgateway;
  3. Cmapeador;
  4. Dcamada supertipo;
  5. Einterface separada.
Revelar gabarito e comentário

GabaritoC — mapeador;

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”.

Padrões de Arquitetura de Aplicações Corporativas

Gabarito: letra C (mapeador). O padrão Mapeador (Mapper) tem como objetivo estabelecer a comunicação entre dois objetos independentes, atuando como um intermediário que media a interação sem que as classes A e B precisem se conhecer diretamente. Esse conceito é formalizado por Martin Fowler em Patterns of Enterprise Application Architecture.

1Mapeador (Mapper)
Comunicação entre objetos independentes
Classe intermediária (J entre A e B)
2Gateway
Acesso a sistemas externos (BD, web)
3Plugin
Extensão de funcionalidades
4Camada Supertipo
Classe base para herança
5Interface Separada
Interface em módulo distinto
Padrões de Arquitetura (Fowler)
LEVELsoulevel.com.br
Padrões de Arquitetura (Fowler): Mapeador (Mapper) (Comunicação entre objetos independentes, Classe intermediária (J entre A e B)); Gateway (Acesso a sistemas externos (BD, web)); Plugin (Extensão de funcionalidades); Camada Supertipo (Classe base para herança); Interface Separada (Interface em módulo distinto)

Alternativa A — ❌ Incorreta

O padrão Plugin é utilizado para estender funcionalidades de uma aplicação através de componentes plugáveis, não para mediar comunicação entre objetos independentes.

Alternativa B — ❌ Incorreta

O padrão Gateway encapsula o acesso a sistemas externos (como bancos de dados ou serviços web), servindo como fachada para recursos externos, e não como intermediário entre objetos internos independentes.

Alternativa C — ✅ Correta ⟵ GABARITO

O Mapeador (Mapper) é exatamente o padrão que cria um objeto separado para configurar a comunicação entre duas classes que não possuem dependência direta. É o que a classe J faz entre A e B.

Alternativa D — ❌ Incorreta

Camada Supertipo refere-se a uma classe base da qual outras classes herdam comportamento comum, não a um mecanismo de comunicação entre objetos.

Alternativa E — ❌ Incorreta

Interface Separada consiste em definir uma interface em um módulo distinto de sua implementação, visando baixo acoplamento, mas não resolve diretamente a comunicação entre dois objetos independentes.

PEGA ESSA DICA!

Lembre-se: o Mapeador é um intermediário puro; já o Gateway é voltado para acesso a recursos externos, e o Plugin para extensão de comportamento. Na prova, identifique pelo contexto: se há duas classes independentes e uma terceira classe que as conecta, o padrão é Mapeador.

Gabarito: letra C

Link permanente: /questoes/fg098584