BFF
BFF significa backend for frontend. Ele organiza operações conforme a necessidade de uma experiência, para que o frontend não precise conhecer a estrutura interna dos domínios e das integrações.
Por exemplo, uma tela de trabalho pode precisar de dados de mais de um domínio. O BFF obtém e adapta esses dados para a tela. Cada domínio continua dono das próprias regras.
Como o BFF compõe uma experiência
O BFF adapta e combina capacidades. Ele não transfere a decisão de negócio para a interface nem assume regras que precisam continuar válidas em outros consumidores.
Responsabilidades
| O BFF faz | Exemplo |
|---|---|
| Coordena os domínios necessários. | Reúne dados para uma única tela. |
| Adapta contratos para a experiência. | Converte vários resultados em uma resposta adequada ao frontend. |
| Propaga identidade, autorização e correlação. | Mantém o contexto da pessoa em todas as chamadas do fluxo. |
| Aplica políticas da composição. | Controla cache, limite ou troca de token ligados à experiência. |
| Oculta detalhes internos. | O frontend chama uma intenção, não serviços internos diretamente. |
Composição não é regra de negócio
O BFF decide como combinar capacidades para atender à experiência. O domínio decide se a operação é válida e como o negócio se comporta.
Se uma decisão precisa continuar correta quando a interface muda, ela pertence ao domínio. Se a decisão só existe porque uma tela precisa apresentar dados em uma forma específica, ela pertence ao BFF.
Quando usar
Use o BFF quando uma operação combina mais de um domínio, adapta um contrato para uma experiência, coordena uma integração ou evita várias viagens entre frontend e backend. Não o use apenas como passagem obrigatória entre a API e todo domínio: uma entrada simples pode chamar o caso de uso responsável sem composição adicional.
Próximos passos
Leia Camada de API para entender a entrada pública e Domínios para identificar quem mantém a regra do fluxo.