Arquitetura de software
- SOLID, MVC e Clean Code
- Monólito vs Microsserviços
Monolítico
MicroServiço
CQRS significa Segregação de Responsabilidade de Comando e Consulta
BFF
Back-end For Front-end;
E uma api(Rest, Rest full, WSTL, RFS);
Camada que vai se comunicar com n* serviços;
Coloca formatação de informação; Testes;
Se comunica por Rest Full (factory ou parse), chamada de API;endPoints;
Ele consumo as APIs de serviço e devolve os dados ja tratados
DDD
Domain-Driven Design(DDD) → Introdução feita em 2003 por Eric Evans; Facil de compreender; Dificil de Aplicar; Um guia para criar um modelagem com base no negócio.
DDD → Lite (não e falado em literaturas).
Context Map definido e coeso → Contexto bem definido e mapeado.
DDD não e quebrar a arquitetura em camadas;
Padrões de Projeto / Design patterns
DDD - Score card
0-5
Erros comuns →
Permitir que o meio de persistencia influence diretamente nas entidades
Não se envolver os donos do negoicos
Ignorar a linguagem comun
Não ter conhecimento dos limites de context
Entidades Anemicas
Deixar toda a logica por conta do dominio
Deixar de focar o negocio e olhar para tecnologias
SOLID
S → SINGLE RESPONSIBILITY = Componentes e classes so podem ter uma responsabilidade
O → Open Close = Aberto pare ser usado mas não para mudanças
L → Liskov Substitution += Herança-Polimorfismo
I → Interface Segregation= So pode ser usado oque precisa ser usado, os depender de coisas que não vão usar.
D → Dependency inversion = depender de abstranção não de implementaçãocan