-
Notifications
You must be signed in to change notification settings - Fork 28
Open
Description
A ideia desse conteúdo, é criar um guia para se abstrair negócios para código, utilizando "apenas" o que a tecnologia te entrega:
Descreva o conteúdo desejado
Guia prático para abstrair negócio em código (utilizaremos TypeScript, que encaixa bem com ideia do curso)
Descreva as alternativas que você considerou para o conteúdo
Passo a passo do que deverá ser abordado:
- Criação de classes para abstração base (domínio);
- Privacidade de atributos e métodos;
- Criação de regras de negócio de domínio no core da implementação utilizando design pattern Factory Method; #32
- Criação de regras de negócio relacionadas ao caso de uso na camada de use-case; #34
- Portas para implementações de baixo nível (e ficará como desafio implementar as soluções de baixo nível);
- Injeção de dependência (Pode ser conteúdo futuro isoladamente);
- Testar implementação via teste unitário (Pode ser conteúdo futuro isoladamente);
Contexto adicional
- Pode ser utilizado como negócio um processo de autenticação simples com apenas duas funcionalidades (salvar e autenticar usuário) como exemplo no guia.
- Esse conteúdo pode estar na parte de Senior, como sugeri no título, mas é um conteúdo relacionado a fundamento, podendo estar também na parte de Pleno
- Todos os pontos listados devem ser explicados com clareza, mas sem tanta profundidade, para que fique uma porta aberta para pesquisas e aprofundamentos.
Conhecimento a ser absorvido
- Noções de Orientação a Objetos
- +1 design pattern (Factory Method)
- Implemetação de alto nível e a diferença para implementações de baixo nível
- Testes unitários (principalmente focados em cobrir casos de uso).
Metadata
Metadata
Assignees
Labels
No labels