Questão nº 44
Questão de Tecnologia da Informação · FGV TJ-MS 2024 (nº 44)
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:
- Aplugin;
- Bgateway;
- Cmapeador; (alternativa correta)
- Dcamada supertipo;
- Einterface separada.
Resposta comentada
Gabarito Alternativa C
Um Mapeador é um padrão de projeto que traduz dados ou chamadas entre dois objetos ou sistemas que são independentes e possuem interfaces ou estruturas de dados diferentes, permitindo que eles se comuniquem.
(A) Incorreta: Um plugin é um componente que adiciona funcionalidades específicas a um sistema existente, não sendo seu propósito principal estabelecer comunicação entre duas classes independentes através de tradução.
(B) Incorreta: Um gateway atua como um ponto de entrada ou saída para um sistema ou subsistema, gerenciando o acesso e a comunicação com recursos externos ou outras camadas. Embora facilite a comunicação, o foco do gateway está mais na orquestração e acesso a um conjunto de serviços, e não na tradução direta entre duas classes internas independentes. A armadilha aqui é que um gateway permite comunicação, mas a ação de traduzir entre objetos independentes é mais específica de um mapeador.
(C) Correta: A classe J, ao estabelecer comunicação entre duas classes A e B que são independentes, atua como um Mapeador. Ela "mapeia" ou traduz as informações, métodos ou estruturas de dados de uma classe para a outra, permitindo que elas interajam apesar de suas diferenças e independência.
(D) Incorreta: Camada supertipo (Layer Supertype) é uma classe base abstrata para todas as entidades em uma camada específica, usada para centralizar comportamentos comuns, e não para mediar comunicação entre instâncias de classes independentes.
(E) Incorreta: Uma interface separada é um princípio de design que promove o desacoplamento, definindo contratos de serviço. Embora possa ser usada por um mapeador, ela não descreve o padrão de como a comunicação é estabelecida ou traduzida entre objetos independentes.
Fonte: FGV TJ-MS 2024 Técnico de Nível Superior - Web Designer (Caderno Tipo 1). Reproduzida para fins de estudo.