Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Desvendando a Arquitetura Hexagonal na prática

Desvendando a Arquitetura Hexagonal na prática

Nessa palestra vamos descomplicar o conceito de Arquitetura Hexagonal e a sua relação com com microsserviços. Além disso teremos exemplos práticos no final afim de entender na prática o seu funcionamento.

Avatar for Daniel Silva

Daniel Silva

August 06, 2022
Tweet

More Decks by Daniel Silva

Other Decks in Technology

Transcript

  1. 02. 01. 03. 04. O que é arquitetura hexagonal e

    por que usar? Clean Arch e Onion Estrutura do hexágono Prática e conclusão Nesta palestra
  2. - Criada em 2005 por Alistair Cockburn - Arquitetura baseada

    em Ports e Adapters - Lógica do negócio apartada - Baixo nível vs Alto nível - SOC: Separation of concerns Hexagonal: O que é?
  3. - Criação de “partições” para separar preocupações Separation of concerns

    https://dev.to/suspir0n/soc-separation-of-concerns-5ak7
  4. Por que usar? - Facilita a evolução da aplicação -

    Futuras manutenções são mais simples - Aplicações com baixo acoplamento e alta coesão https://asborsoni.com/it/blog/debito-tecnologico-e-architettura-esagonale
  5. - Centro - Lado direito - Lado esquerdo - Portas

    e Adaptadores Estrutura do hexágono https://asborsoni.com/it/blog/debito-tecnologico-e-architettura-esagonale
  6. Centro do hexágono - Foco no negócio - Dependências externas

    são ignoradas - Entidades e Interfaces são exemplos que ficam na parte Central https://asborsoni.com/it/blog/debito-tecnologico-e-architettura-esagonale
  7. - Ator secundário - Interação com banco de dados -

    Executor de ação Lado direito https://asborsoni.com/it/blog/debito-tecnologico-e-architettura-esagonale
  8. - Ator primário - Interação com mundo externo - Realiza

    ação Lado esquerdo https://asborsoni.com/it/blog/debito-tecnologico-e-architettura-esagonale
  9. - Responsável pela comunicação dos lados para o centro -

    São implementadas como interfaces Ports
  10. - Externalizar o controle das instâncias - Proporciona acoplamento fraco

    Inversion of control https://www.codeguru.com/blog/implementing-the-inversion-of-control-pattern-in-c
  11. Independe de serviços externos Diminuição de lock in Facilidade para

    adaptar novos serviços e configurações Código mais escalável e facilidade nos testes
  12. Referências - https://github.com/eusouodaniel/igti-hexagonal-architeture - https://medium.com/@edamtoft/onion-vs-clean-vs-hexagonal-architecture-9ad94a27da9 1 - https://www.macoratti.net/20/05/net_onion1.htm - https://medium.com/luizalabs/descomplicando-a-clean-architecture-cf4dfc4a1ac6

    - https://www.codeguru.com/blog/implementing-the-inversion-of-control-pattern-in-c - https://asborsoni.com/it/blog/debito-tecnologico-e-architettura-esagonale - https://dev.to/suspir0n/soc-separation-of-concerns-5ak7 - https://netflixtechblog.com/ready-for-changes-with-hexagonal-architecture-b315ec96774 9?gi=e0c273164233 - https://medium.com/ssense-tech/hexagonal-architecture-there-are-always-two-sides-to-e very-story-bc0780ed7d9c