18. Anatomia de uma Fronteira
Monolito, componentes, threads, processos, serviços.
Resumo
- Cruzar fronteira = função de um lado chamar função do outro e passar dados. Truque: gerenciar dependências de código.
- Monolito: fronteiras só de código-fonte; polimorfismo dinâmico inverte dependências. Chamadas baratas.
- Componentes de implantação (jar/DLL): mesma estratégia, unidades separadas. Ainda chamadas de função.
- Threads não são fronteira arquitetural, só organização de execução. Processos locais: comunicação via sockets/filas.
- Serviços: fronteira mais forte e mais lenta; comunicação via rede. Alto nível nunca conhece o baixo.
Perguntas-chave
responda de cabeça, depois abraThread é uma fronteira arquitetural?
Não. É forma de organizar agendamento e execução; pode existir em um ou vários componentes.
Qual a fronteira mais cara de cruzar?
Serviço: comunicação pela rede, latência alta. Evite conversas muito frequentes (chatty).
Em todas as formas de fronteira, qual regra permanece?
Código de baixo nível depende do alto nível; nunca o contrário.
Exercícios de fixação
0/5 respondidas1.
Qual destas não é uma fronteira arquitetural?
2.
Em um monolito, como se mantém a separação arquitetural?
3.
Ordene do mais barato ao mais caro para cruzar:
4.
Ao comunicar serviços, o que o capítulo recomenda?
5.
Processos locais se comunicam normalmente por: