26. O Componente Main
O detalhe final. O plugin mais sujo.
Resumo
- Todo sistema tem um componente que cria, coordena e supervisiona os demais: Main.
- Main é o detalhe de mais baixo nível: ponto de entrada; só o SO depende dele.
- Cria fábricas, estratégias, facilidades globais; faz injeção de dependência; entrega controle à política de alto nível.
- É o componente mais sujo: pode conhecer classes concretas, configurações, strings de conexão.
- Main é plugin: pode haver um para dev, outro para teste, outro por país/cliente.
Perguntas-chave
responda de cabeça, depois abraQual o papel de Main?
Criar e configurar os objetos concretos, injetar dependências e passar controle às políticas de alto nível.
Por que Main pode ser "sujo"?
Fica fora da arquitetura limpa, na borda; ninguém depende dele, então sua sujeira não se propaga.
Pode haver vários Mains?
Sim. Um para cada configuração: dev, teste, produção, país, cliente.
Exercícios de fixação
0/5 respondidas1.
Onde deve ficar o código que instancia
PostgresOrderRepository e o injeta no caso de uso?2.
Por que o autor chama Main de componente "mais sujo"?
3.
Qual a vantagem de tratar Main como plugin?
4.
Quem depende do componente Main?
5.
Em relação aos níveis, Main é: