15.1. Remote Facade
Fachada de grão grosso sobre objetos de grão fino, para chamadas remotas.
Resumo
- Fachada de grão grosso que traduz uma chamada remota em várias chamadas locais aos objetos finos.
- Sem lógica de domínio: só tradução, agrupamento, transação e segurança. Camada fina.
- Recebe e devolve Data Transfer Objects em vez de objetos de domínio.
- Pode ter estado ou não; sem estado facilita pool e escala. Organizar por caso de uso ou por objeto.
- Use só onde há fronteira remota. Internamente, mantenha interfaces finas e OO.
Perguntas-chave
responda de cabeça, depois abraO Remote Facade contém lógica de domínio?
Não. É uma camada fina que só adapta a interface fina para chamadas remotas grossas.
O que ele recebe e devolve?
Data Transfer Objects.
Qual a diferença para Service Layer?
Service Layer pode ser local e define operações; Remote Facade existe só por causa da rede e não tem lógica.
Exercícios de fixação
0/5 respondidas1.
Um app móvel chamava
getNome(), getEndereco() e getTelefone() remotamente, com 3 idas à rede. Agora chama getDadosCliente(id) e recebe tudo de uma vez. Qual padrão foi aplicado?2.
Onde não deve haver lógica de domínio?
3.
Por que preferir fachadas remotas sem estado?
4.
Responsabilidades aceitáveis em um Remote Facade:
5.
Um sistema roda em um único processo, sem chamadas remotas. Precisa de Remote Facade?